joevt
8a81cb4f9c
sc53c94: Use enums.
2024-04-03 18:12:00 -07:00
joevt
1504bd2227
sc53c94: Move DATA_FIFO_MAX from header.
...
Headers shouldn't make defines that are not meant to be used outside the source file.
2024-04-03 18:11:07 -07:00
dingusdev
475f894582
Comment out log message
2024-04-02 19:21:56 -07:00
joevt
7007e002e6
macio: Make interrupt flags atomic.
...
So they can be modified by other threads.
2024-04-02 19:05:57 -07:00
joevt
9af1b1a720
control: Narrow the scope of local variable.
2024-04-01 22:12:20 -07:00
joevt
ca9657baf1
control: Update little-endian error message.
2024-04-01 22:12:05 -07:00
joevt
3e347746f9
control: Don't abort when setting little endian.
...
If this gets set accidentally, (such as while playing in Open Firmware), allow the user to change it back.
2024-04-01 22:11:35 -07:00
joevt
b5987afaa6
control: Implement BAR update.
2024-04-01 22:11:30 -07:00
joevt
ea46d08835
appleramdac: Allow read from CLUT part 2.
2024-04-01 21:47:59 -07:00
joevt
789114cc7d
control: Save CNT_TST and MON_SENSE.
...
These are writable registers that should return what was written to them.
2024-04-01 21:34:26 -07:00
joevt
cf292fafcb
control: vram changes.
...
Allow VRAM presence only in optional bank.
control: Implement banks.
The BAR is 64MB.
The little-endian/big-endian ranges repeat every 16MB.
An endian range can be addressed in d128 (wide) mode or d64 mode.
In d128 mode, there is a 4MB range followed by an undefined 4MB range. bytes 0..7 belong to the standard bank and bytes 8..15 belong to the optional bank.
In d64 mode:
- 2MB mirror ranges at 0MB and 2MB (both have the same read/write behavor: write to both banks or read from the standard bank.
- 2MB standard bank rage at 4MB.
- 2MB optional bank range at 6MB.
2024-04-01 21:17:17 -07:00
joevt
08fca7de69
control: Recalc framebuffer after each change.
2024-04-01 20:58:46 -07:00
joevt
b42437c458
control: Mask unmodifiable bits.
2024-04-01 19:01:03 -07:00
joevt
98e1787f93
machines: Remove duplicate gfxmem_size properties.
2024-04-01 18:28:13 -07:00
joevt
7a0ec0ecd3
README: Grammar.
2024-04-01 18:23:39 -07:00
dingusdev
55b9f8bbe5
bzero -> memset
2024-04-01 08:03:12 -07:00
joevt
2968645f2e
scsihd: Allow INQUIRY allocation length != 36.
...
Truncate for < 36 and zero fill for > 36.
2024-04-01 08:02:17 -07:00
joevt
92dea0e404
scsihd: Include invalid field info.
...
For CHECK_CONDITION status from READ_CAPACITY_10.
2024-04-01 08:01:09 -07:00
joevt
bfd3077bd0
scsicdrom: Check Lun for INQUIRY.
...
INQUIRY now returns 0x7f for device type if LUN doesn't match. INQUIRY can get LUN from CDB or from IDENTIFY message.
2024-04-01 08:00:41 -07:00
joevt
2d1616894d
appleramdac: Allow read from CLUT.
2024-04-01 07:39:20 -07:00
joevt
7c203b40c8
appleramdac: Reset comp_index on address change.
2024-04-01 07:37:16 -07:00
joevt
2f63a2fa17
appleramdac: Add other vendor id.
2024-04-01 07:10:55 -07:00
joevt
e3e065a6d7
appleramdac: Register comments.
2024-04-01 06:47:25 -07:00
dingusdev
afd8ba8cf2
Slight adjustment for the readme
2024-03-31 15:09:57 -07:00
dingusdev
43d87b4791
Temp revert for icnt_factor
...
We should, at minimum, make icnt_factor adjustable. That said, powermax is suggesting we develop a more sophisticated scheduler.
2024-03-31 14:13:45 -07:00
joevt
6267685920
ppcexec: Make EXEF_TIMER separate variable.
2024-03-31 12:15:48 -07:00
joevt
48882f3fec
ppcexec: Adjust icnt_factor.
...
So that 1000 ms takes ≈ 1 second in Open Firmware on 4 GHz Intel CPU.
2024-03-31 11:51:04 -07:00
joevt
0ac54ea1ea
ppcexec: Add host time option.
2024-03-31 11:50:55 -07:00
joevt
4395ce01d7
ohare: Update name of Mesh device.
2024-03-30 17:56:19 -07:00
joevt
2c097da12d
grandcentral: Add escc DMA.
2024-03-30 14:55:24 -07:00
joevt
5f316dc7a4
grandcentral: Adjust audio in DMA logging.
2024-03-30 12:49:33 -07:00
joevt
02a475e113
sc53c94: Remove duplicate bus_obj.
...
sc53c94 is a ScsiDevice which has its own bus_obj which is set by register_device.
2024-03-30 11:56:59 -07:00
joevt
338bbe27a8
scsihd: Implement REQ_SENSE.
...
Returns error information stored in class fields: sense, asc, ascq, sksv, and field.
2024-03-30 11:56:37 -07:00
joevt
44564065f6
scsihd: Changes for MODE_SENSE_6.
...
Return CHECK_CONDITION for unsupported page_ctrl or page or subpage.
Handle the all pages code 0x3F.
2024-03-30 11:56:02 -07:00
dingusdev
c54ec7be2d
Use memset instead of bzero
2024-03-30 11:19:32 -07:00
joevt
274e380b34
scsicdrom: Allow INQUIRY allocation length != 36.
...
Truncate for < 36 and zero fill for > 36.
2024-03-30 11:16:41 -07:00
joevt
e872f08273
scsicdrom: Include invalid field info.
...
For CHECK_CONDITION status from READ_CAPACITY_10 and READ_TOC.
2024-03-30 11:00:01 -07:00
joevt
a6fda3b787
scsicdrom: Handle MODE_SENSE_6 unsupported page.
...
Return CHECK_CONDITION status instead of abort. To Do: apply change to scshhd.
2024-03-30 10:59:43 -07:00
joevt
a48851888f
scsihd: Setup data_ptr for STATUS and MESSAGE_IN.
...
bytes_out is used instead of the removed cur_buf_cnt.
data_ptr is setup by prepare_data instead of process_command.
Not sure why scsicdrom doesn't set bytes_out in prepare_data.
2024-03-30 08:37:10 -07:00
joevt
f1abb66f9a
atahd: Add STANDBY_IMMEDIATE.
2024-03-30 08:30:37 -07:00
joevt
c999c51d77
scsicdrom, scsihd: Check lun.
...
READ_CAPACITY_10, READ_6, and READ_10 now checks LUN that is included in CDB and returns a CHECK_CONDITION if it doesn't match.
2024-03-29 19:12:06 -07:00
joevt
6bb5227ee1
scsihd: Abort if RelAdr bit of READ_10.
...
Like scsicdrom does.
2024-03-29 19:01:42 -07:00
joevt
cefe8698da
scsihd: Add PREVENT_ALLOW_MEDIUM_REMOVAL.
...
Like scsicdrom has.
2024-03-29 19:01:32 -07:00
joevt
4be6bad526
scsicdrom: Fix compiler warning.
2024-03-29 19:00:38 -07:00
joevt
d3c913e384
scsicdrom: Cleanup.
...
- Use macros for reading 2 byte or 4 byte big endian data. block_size is assumed to be < 64K so WRITE_DWORD_BE_A will write two leading zeros.
- Scalar pass by value parameters don't need to be const.
- Remove some unnecessary locals.
2024-03-29 18:53:13 -07:00
joevt
a868f4eee4
scsihd: Cleanup.
...
Use this qualifier.
Use macros for reading 2 byte or 4 byte big endian data.
2024-03-29 18:53:04 -07:00
joevt
44da89979f
scsihd: Use device name in abort message.
2024-03-29 18:52:52 -07:00
joevt
a79f07e4dc
scsicdrom: Move mode_select_6.
...
Make it a separate method like scsihd. It also checks the incoming param size. If it's zero then the phase is not switched. Is that wrong? Still probably unfinished.
2024-03-29 18:52:30 -07:00
Maxim Poliakovski
e17a96f5ec
atirage: break long lines.
2024-03-29 21:21:58 +01:00
joevt
5062508940
scsicdrom: Rename mode_sense_6.
...
To match scsihd.
2024-03-29 07:56:48 -07:00