moa/todo.txt

65 lines
3.2 KiB
Plaintext
Raw Normal View History

2021-12-07 22:29:38 +00:00
* should you rename devices.rs traits.rs?
* should SharedData be HostData, or something else? I don't think the name is very informative
2021-12-07 22:29:38 +00:00
* rewrite the frame swapper thing to either not use the swapper or somethnig... it's just very sloppy and needs improving
* can you make the connections between things (like memory adapters), be expressed in a way that's more similar to the electrical design?
like specifying that address pins 10-7 should be ignored/unconnected, pin 11 will connect to "chip select", etc
2021-12-07 22:29:38 +00:00
* can you make the address bus/repeating thing in the mac with the rom and ram, can you make it work for both the 128 and 512
* add sound
* should you simulate bus arbitration?
* interrupts could be done in a better way
2021-11-23 19:45:11 +00:00
* modify the frame swapper and frontend to avoid the extra buffer copy
2021-12-07 22:29:38 +00:00
* add command line arguments to speed up or slow down either the frame rate limiter or the simulated time per frame
* need to implement the 1.5ms reset in the genesis controllers
2021-11-23 19:45:11 +00:00
2021-11-13 19:39:20 +00:00
2021-10-31 18:00:14 +00:00
* how can you do devices that change their address map during operation, like mac which puts rom at 0 and ram at 600000 temporarily
2021-10-29 22:05:41 +00:00
* i need a better way of handling disperate reads/writes to I/O spaces, rather than having multiple devices or having a massive chunk of address space allocated, continuously
* should you modify Addressable to also take the absolute address as input? I'm thinking of how the same device could be mapped to multiple addresses in memory instead
of taking up a whole range of addresses
2021-11-13 19:39:20 +00:00
* could have a remapper device, which takes a big swath of addresses in and maps them to another set of addresses (for Mac VIA generic to bus-hookup-in-mac adapter)
* could you use a generic sharable signal thing for sharing data, such as the VIA in mac128 where a single output bit determines the video mode (which would be a separate device)
So both could share the same Signal, one setting it and the other reading it, but how would you actually configure/build that?
2021-12-07 22:29:38 +00:00
* add more m68k tests and try to test against a working impl
* you could modify read()/write() in Addressable to return the number of bytes read or written for dynamic bus sizing used by the MC68020+
2021-10-26 19:17:59 +00:00
2021-10-29 22:05:41 +00:00
Genesis/Mega Drive:
* fix ym7101 to better handle V/H interrupts (right now it sets and then the next step will clear, but it'd be nice if it could 'edge trigger')
* YM7101 timing is causing it to be very slow... speeding this up increasing rendering speed a lot, even though the frame shouldn't be drawn that often... not sure what's wrong with the timing
* make the ym7101 set/reset the v_int occurred flag based on the interrupt controller
2021-12-07 22:29:38 +00:00
68000:
* add instruction timing to M68k
* make tests for each instruction
* check all instructions in the docs
2021-12-07 22:29:38 +00:00
* unimplemented: BFFFO, BFINS, CHK, ILLEGAL, NBCD, NEGX, RTR, RTD
* >=MC68020 undecoded & unimplemented: BKPT, CALLM, CAS, CAS2, CHK2, CMP2, RTM, PACK, TRAPcc, UNPK
* add support for MMU
* add support for FPU
* Coprocessor instructions: cpBcc, cpDBcc, cpGEN, cpScc, cpTRAPcc
Z80:
* add instruction timings to Z80
2021-12-07 22:29:38 +00:00
* work on mac128/512
* work on sega genesis
* how can you have multiple CPUs
* can you eventually make the system connections all configurable via a config file?