Commit Graph

173 Commits

Author SHA1 Message Date
Maxim Poliakovski
1872eca44f SWIM3: implement head stepping. 2022-02-07 23:05:58 +01:00
Maxim Poliakovski
9aaf441625 Superdrive: more commands and status requests. 2022-02-07 15:05:57 +01:00
Maxim Poliakovski
b9fbd9b7c9 Superdrive: support for inserting of virtual disks. 2022-02-06 21:23:20 +01:00
Maxim Poliakovski
5e2f2b12e4 Properly connect Superdrive to SWIM3 and machines. 2022-02-06 15:23:30 +01:00
Maxim Poliakovski
b25b526582 hwcomponent: add floppy disk drive component type. 2022-02-06 15:20:07 +01:00
Maxim Poliakovski
dea863b6e6 Superdrive: support disk-in-drive status. 2022-02-06 03:25:35 +01:00
Maxim Poliakovski
00093bdc95 sc53c94: support interrupts. 2022-02-06 01:50:54 +01:00
Maxim Poliakovski
298135fd7a AMIC: process VIA2 interrupts. 2022-02-06 01:50:54 +01:00
Maxim Poliakovski
7c53620a40 sc53c94: implement sequencer and some commands. 2022-02-06 01:50:54 +01:00
Maxim Poliakovski
b5f70feb28 Initial SCSI bus emulation. 2022-02-06 01:50:54 +01:00
Maxim Poliakovski
5c177cc50f Simplify registration of HW component types. 2022-01-26 16:45:21 +01:00
Maxim Poliakovski
dc34f282b7 53C94: support more registers and commands. 2022-01-24 22:55:49 +01:00
Maxim Poliakovski
5883524fb8 53C94: chip initialization and identification. 2022-01-22 04:37:52 +01:00
Maxim Poliakovski
3bdc6f915a AMIC: implement periodic VBL (60.15 Hz) interrupt. 2022-01-21 12:42:05 +01:00
Maxim Poliakovski
0899186ffc ViaCuda: implement post-initialization. 2022-01-21 12:42:05 +01:00
Maxim Poliakovski
c1208b398e Add posti-initialization to HW components. 2022-01-21 12:42:05 +01:00
Maxim Poliakovski
4867a68e11 VIA: public method for asserting control lines. 2022-01-21 11:08:32 +01:00
Maxim Poliakovski
9c4e6c8a86 Rewrite ViaCuda to support SR and T2 interrupts. 2022-01-10 17:56:24 +01:00
Maxim Poliakovski
c218badd5a Clean up some ctors/dtors. 2022-01-10 17:56:24 +01:00
Maxim Poliakovski
d61d1d71eb Add interrupt processing to AMIC. 2022-01-10 17:56:24 +01:00
Maxim Poliakovski
d9d8384d4a Add interrupt controller interface and definitions. 2022-01-10 17:56:24 +01:00
Maxim Poliakovski
d4ecb77b24 pdmonboard: enable periodic video updates. 2022-01-10 17:56:24 +01:00
Maxim Poliakovski
9a0c340712 Basic SWIM3 and Superdrive emulation. 2021-12-12 21:40:04 +01:00
Maxim Poliakovski
9caaf0f538 Basic emulation of the PDM on-board video. 2021-12-07 22:54:03 +01:00
Maxim Poliakovski
476d893094 videoctrl: add framebuffer conversion callback. 2021-12-07 22:47:25 +01:00
Maxim Poliakovski
fff597075d Monitor type can be now specified from the command line. 2021-12-06 00:40:40 +01:00
Maxim Poliakovski
793335d9b8 Clean up includes. 2021-12-05 20:01:57 +01:00
Maxim Poliakovski
f39188beb1 Initial support for floppy disk images. 2021-12-04 14:22:02 +01:00
Maxim Poliakovski
609fb43726 Rewrite DisplayID to work with AMIC & ATI Rage. 2021-11-30 01:26:32 +01:00
Maxim Poliakovski
99f5aba12e atirage: replace raw pointers with unique_ptr. 2021-11-17 23:30:43 +01:00
Maxim Poliakovski
cbf4e266e1 atirage: better name for HW registers. 2021-11-11 14:57:31 +01:00
dingusdev
84ded9fc7a Added further CUDA commands 2021-11-10 07:56:50 -07:00
Maxim Poliakovski
a01cd9c993 Make display ID method selectable in video controller. 2021-11-09 14:15:21 +01:00
Maxim Poliakovski
fc44cdcc83 Heathrow: logging monitor sense status. 2021-11-09 13:41:48 +01:00
Maxim Poliakovski
958d3ee96a Factor out common video controller code. 2021-11-09 13:40:13 +01:00
Maxim Poliakovski
392fa87ba4 Add NCR 53C90 stub. 2021-10-26 19:00:04 +02:00
Maxim Poliakovski
87b8e1759a Connect ESCC to AMIC and Heathrow. 2021-10-25 22:19:45 +02:00
Maxim Poliakovski
cb946e41b5 Initial ESCC emulation. 2021-10-25 22:19:45 +02:00
Maxim Poliakovski
3f20d0a700 heathrow: use unique_ptr with internal objects. 2021-10-25 22:19:45 +02:00
Maxim Poliakovski
6a756df5e3 Add MACE Ethernet emulation stub. 2021-10-24 21:02:30 +02:00
Maxim Poliakovski
c0cd6eb38f Add missing licence headers, update license date. 2021-10-23 21:00:31 +02:00
Maxim Poliakovski
9329d56d83 Move devices into dedicated subdirectories. 2021-10-23 20:17:47 +02:00
Maxim Poliakovski
7daf4aa317 viacuda: improve READ_MCU_MEM & WRITE_MCU_MEM emulation.
68k boot code in ROM uses those commands for applying patches
to Cuda and getting Cuda firmware version. This commit
implements as much as needed for boot code to work.
2021-10-18 23:52:12 +02:00
Maxim Poliakovski
f194887d34 viacuda: properly initialize VIA registers. 2021-10-18 16:38:12 +02:00
Maxim Poliakovski
46549d68a2 viacuda: remove superfluous newlines and casts from messages. 2021-10-18 16:38:12 +02:00
Maxim Poliakovski
c7544d9c2f amic: reorganize registers in blocks. 2021-10-16 15:07:53 +02:00
Maxim Poliakovski
2f725fe3e4 viacuda: fix PRAM reading and writing. 2021-10-14 00:01:30 +02:00
Maxim Poliakovski
7c47b9c1e7 amic: implement AMIC2 identification. 2021-10-13 09:06:16 +02:00
Maxim Poliakovski
9caef55c19 amic: implement diagnostics register. 2021-10-10 22:01:02 +02:00
Maxim Poliakovski
89e79d05cb Load bootrom code to primary ROM region. 2021-10-10 22:01:02 +02:00