Commit Graph

1079 Commits

Author SHA1 Message Date
dingusdev b4051a1ab1 ADB keyboard support started
For reasons unknown, no key presses are recognized by the Mac OS.
2023-08-11 10:34:57 -07:00
Maxim Poliakovski d2e7c9a5df ppcexceptions: fix next address for decrementer exceptions. 2023-08-09 12:53:48 +02:00
Maxim Poliakovski ee9c692115 mesh: implement more register reads. 2023-08-09 01:40:09 +02:00
Maxim Poliakovski de1f0c8a9b ppc_mmu: rename reg_desc to rgn_desc to improve readability. 2023-08-07 13:56:49 +02:00
Maxim Poliakovski 52a64168d7 Clean up previous merge. 2023-08-07 13:45:26 +02:00
Maxim Poliakovski b571ff8412 Revert "ppcmmu: Add 64-bit accesses to I/O"
This reverts commit 16123dea45.
2023-08-07 13:06:11 +02:00
Maxim Poliakovski 762319055c
Merge pull request #50 from joevt/mmu-changes-branch
mmu changes
2023-08-07 12:58:46 +02:00
Maxim Poliakovski cd9ccb66ed adbkeyboard: fix compiler warning. 2023-08-07 12:51:09 +02:00
joevt ac64f9e30d ppcmmu: Fix mmio read/write offset calculation.
For TLBs referencing an mmio region, calculate an offset that will translate a guest virtual address to an offset in the mmio region.
2023-08-04 20:16:13 -07:00
joevt 16123dea45 ppcmmu: Add 64-bit accesses to I/O
Also add an exception for unaligned 64 bit. 64 bit accesses require dword alignment.
2023-08-04 20:16:13 -07:00
joevt 814260f0b6 ppcmmu: Reduce unmapped physical memory logging.
Don't log consecutive accesses to unmapped physical memory addresses. This saves a couple hundred thousand lines in the log in some cases.
This is only a partial fix. Any access that isn't logged should be queued and output if a log message is output that is not this log message or after a time period.
2023-08-04 20:16:13 -07:00
dingusdev b23bb04dac Start fix for SCSI Hard Drive 2023-08-02 07:53:19 -07:00
dingusdev a7601c36bd Started work on keyboard input 2023-08-01 22:43:11 -07:00
Maxim Poliakovski 1a883ba73e viacuda: implement basic autopolling. 2023-08-02 00:07:17 +02:00
Maxim Poliakovski 2e50b364c4 adbmouse: emulate single button mouse. 2023-08-01 23:58:29 +02:00
Maxim Poliakovski b4b41a47b2 hostevents: dispatch mouse button events. 2023-08-01 23:57:16 +02:00
Maxim Poliakovski 5b90a3e21d AMIC: rework and improve interrupts. 2023-08-01 17:42:52 +02:00
Maxim Poliakovski ca83f7e8ef pdmonboard: switch to new video controller API. 2023-08-01 17:41:02 +02:00
Maxim Poliakovski 337a9d6dd0 videoctrl: generate VBL interrupts. 2023-08-01 17:37:50 +02:00
Maxim Poliakovski ddf139a659 Extend TimerManager API a bit. 2023-08-01 17:36:29 +02:00
Maxim Poliakovski 6b8fe50f50 hostevents: add prost-processing signal. 2023-08-01 17:21:17 +02:00
Maxim Poliakovski 233ab778b6 adbmouse: support for movement data in R0. 2023-08-01 17:18:46 +02:00
Maxim Poliakovski 4872af1053 control: use new refresh task control. 2023-07-31 03:53:13 +02:00
Maxim Poliakovski 0ca1ebf724 atimach64gx: use new refresh task control. 2023-07-31 03:52:17 +02:00
Maxim Poliakovski 632479b1ba atirage: use new refresh task control. 2023-07-31 03:46:16 +02:00
Maxim Poliakovski 9b81891467 pdmonboard: use new refresh task control. 2023-07-31 03:36:17 +02:00
Maxim Poliakovski 7b2e1d90e6 Move refresh task control to VideoCtrlBase. 2023-07-31 03:34:02 +02:00
Maxim Poliakovski 6fa6b4d4dc Rework the EventManager to use CoreSignal. 2023-07-27 02:40:32 +02:00
Maxim Poliakovski 6efe6f13a9 Add new CoreSignal class. 2023-07-27 02:38:21 +02:00
Maxim Poliakovski c254749493 viacuda: connect to new AdbBus device. 2023-07-26 04:50:05 +02:00
Maxim Poliakovski fd9f8c90a5 Basic ADB mouse device emulation.
For now, it solely handles the basic ADB commands.
2023-07-26 04:40:20 +02:00
Maxim Poliakovski 0a0761c7e0 AdbDevice - the base class for ADB devices. 2023-07-26 04:35:07 +02:00
Maxim Poliakovski e9d91175c4 Add AdbBus class and device. 2023-07-26 04:29:08 +02:00
Maxim Poliakovski 0c0166b565 viacuda: fix packet response protocol.
Cuda needs to negate TREQ before sending the last byte of a
fixed-length response to avoid transfering an extraneous byte.
2023-07-26 04:22:08 +02:00
Maxim Poliakovski 7bb7ff9f0f heathrow: human-readable DBDMA channel names. 2023-07-24 15:20:52 +02:00
Maxim Poliakovski c2cd076662 machinebase: fix log statement warning. 2023-07-23 16:50:14 +02:00
Maxim Poliakovski a9f73e7384 hwcomponent: fix size of the component type enum. 2023-07-23 16:32:00 +02:00
Maxim Poliakovski 14c7d18bdb Revert "Prevents crashing for Big Mac"
This reverts commit 5787d49e9b.
2023-07-23 16:28:31 +02:00
dingusdev 5787d49e9b Prevents crashing for Big Mac
For some reason, on Windows, whether it be VS2022 or Clang, it will crash when trying to write to a Big Mac register if you don't specify the exact name of the component within Heathrow.

This commit fixes that.
2023-07-22 15:15:33 -07:00
Maxim Poliakovski 25150268cd ppcexceptions: fix ISI exception target address. 2023-07-10 14:06:20 +02:00
Maxim Poliakovski f7a1412ec7 atapibasedevice: fix task file initialization on reset. 2023-07-09 02:10:48 +02:00
Maxim Poliakovski a424d48447 bigmac: implement software reset registers. 2023-07-08 23:30:44 +02:00
Maxim Poliakovski e76e3afa87 Improve zdoc/bmac documentation. 2023-07-08 21:33:10 +02:00
Maxim Poliakovski 482fe3eb80 bigmac: MAC serial EEPROM emulation. 2023-07-08 21:32:26 +02:00
Maxim Poliakovski 4de2afc0c5 bigmac: fix Gossamer PHY stuff. 2023-07-08 14:35:23 +02:00
Maxim Poliakovski 742003b6f3 Basic BigMac Ethernet controller emulation.
Emulates MII and some PHY configuration registers.
2023-07-08 01:27:01 +02:00
Maxim Poliakovski 10b8366219 hwcomponent: add Ethernet MAC type. 2023-07-08 01:23:18 +02:00
dingusdev 4364c89fd4 Slight clean-up for execution type 2023-06-19 22:36:27 -07:00
dingusdev d11d693b52 Compilation fix for VS 2023-06-19 22:36:09 -07:00
Maxim Poliakovski 357fc3a73a machineyosemite: attach ATAPI CD-ROM. 2023-06-18 23:44:12 +02:00