transistor
39068fec2a
Added audio support
...
It's better than it was but there are still minor drop outs due to
a buffer underrun I think (could be other timing issues related to
the update loop or something else). Right now, the audio chips
just have some code to produce sine waves for testing.
2021-12-12 15:20:09 -08:00
transistor
0247279e4b
Refactored signals and added a signal to break at the end of a frame draw
2021-12-08 19:07:27 -08:00
transistor
8db32ab9b3
Modified frame/frameswapper a bit
2021-12-08 13:52:11 -08:00
transistor
6dbae9620d
Renamed SharedData to HostData
2021-12-07 14:29:38 -08:00
transistor
d274186388
Added Macintosh 128k/512k work in progress
2021-12-06 15:04:08 -08:00
transistor
9a751e5e90
Sega Genesis coprocessor bus is now working
...
I've added skeleton devices for the sound chips, and added the bank
register and banked area of ram mapped to the Z80's bus. Sonic1 will
now run (if the ym2612 device's size is set to 0x1000 instead of 0x04)
2021-12-06 14:51:57 -08:00
transistor
8b8430bf13
Updated readme
2021-12-05 19:41:23 -08:00
transistor
5c7c9d065f
Fixed issue with Scroll B offsets
2021-12-05 17:19:27 -08:00
transistor
dd0e84fa51
Improved genesis controllers a bit
...
Some games still broken, but sonic 2 works now
2021-12-05 15:38:11 -08:00
transistor
a5e4f51469
Fixed horizontal scroll
...
The mask for the scroll values was 0x3F but it should have been 0x3FF
2021-12-05 14:26:21 -08:00
transistor
fe60d01340
Added vertical and horizontal scrollling, but it's still a bit broken
2021-12-04 21:04:03 -08:00
transistor
73c5b26e86
Modified controller inputs to work like keys
2021-12-04 14:41:27 -08:00
transistor
8ced62cca0
Fixed bug in ym7101 DMA
2021-12-04 13:58:50 -08:00
transistor
1518ffbc60
Refactored ym7101 to store state unpacked
...
Previously it was storing data in the registers, which was an array
of u8, but now it's storing eg. full addresses for the scroll tables
so that they don't need to be fetched from the register values and
converted every rendering. I was thinking this would maybe make
DMA debugging easier, in particular.
2021-12-04 13:55:58 -08:00
transistor
b540e53ea1
Fixed issues with Genesis controllers and sprite rendering
...
The controller th count was starting at 1 instead of 0 which caused
inputs to be read incorrectly, as well as the fact that inputs are
inverted.
The sprite fix now draws them in the right order so that ComradeOj's
sprite test renders correctly, but games still render them broken
because of some other bug yet to be found
2021-12-03 15:32:59 -08:00
transistor
9464e4c75a
Renamed joystick to controller in host traits
2021-12-02 15:04:41 -08:00
transistor
0f2f989775
Fixed bug in m68k with Extend flag in shift instructions
2021-12-01 10:45:24 -08:00
transistor
31ff828f15
Added Inspectable trait for getting debug data from peripherals
2021-11-29 11:11:32 -08:00
transistor
cb47d23233
Fixed issue with colour 0 being the mask colour
...
For systems that legitimately use 0 for black, this causes a
problem, so I instead use 0xFFFFFFFF for the mask colour which
corresponds to transparent white in ARGB format, which minifb
doesn't support anyways
2021-11-23 11:45:44 -08:00
transistor
812f6800a8
Minor fixes
2021-11-18 08:46:41 -08:00
transistor
1d8065026d
Minor fixes
2021-11-15 20:51:33 -08:00
transistor
a00d7b2f26
Fixed warnings
2021-11-13 11:39:20 -08:00
transistor
0836b6de8b
Added decoding of most Z80 instructions, and additional bugfixes
2021-11-09 11:03:57 -08:00
transistor
d3efa072c2
TRS-80 Model 1 Basic is now working
2021-11-07 22:44:40 -08:00
transistor
6cb9b985ad
Reworked Z80 flags
2021-11-07 16:28:44 -08:00
transistor
5bfde2bff0
Added TRS-80 simulation to test Z80 impl
2021-11-06 21:46:17 -07:00
transistor
7e999d4c3a
Changed the way frontend works and added keyboard support
2021-11-06 21:44:25 -07:00
transistor
a3a11f7459
Fixed some sprites issues
2021-10-31 23:01:56 -07:00
transistor
8fe76334af
Added joystick host adapter
2021-10-31 11:00:14 -07:00
transistor
a02d8e5241
Fixed graphics finally for YM7101 scrolls
2021-10-30 16:17:28 -07:00
transistor
250c0e83d2
Minor fixes
2021-10-29 15:05:41 -07:00
transistor
109ae4db55
Added minifb frontend with very WIP genesis peripherals
2021-10-27 21:01:18 -07:00
transistor
8bbffbe34c
Modified the read interface yet again
2021-10-26 17:33:23 -07:00
transistor
c980c2f56d
Added WIP
2021-10-25 19:31:28 -07:00
transistor
fd894f0638
Modified to use a nanosecond clock
2021-10-23 22:22:02 -07:00
transistor
2ed528a140
Modified the PTY implementation to be use channels
2021-10-22 19:36:05 -07:00
transistor
3579529764
Minor fixes and refactoring
2021-10-19 11:33:51 -07:00
transistor
b88b0a890c
Updated tests for new addressing modes
2021-10-18 16:34:55 -07:00
transistor
3fc76335d0
Moved m68k instruction types to their own file
2021-10-18 12:05:10 -07:00
transistor
1262cbd8c0
Modified to use a common trait to derive other traits
2021-10-17 10:39:43 -07:00
transistor
4bdbe7c7f0
Refactored a bit
...
Now all traits are in the devices file, and host adapters will be
in under src/host/.
2021-10-16 20:30:50 -07:00
transistor
93c9307829
Moved I/O to a separate thread
...
but I'm not happy with it, and will likely change it in future,
possibly to use two threads and two sets of channels to pass chars
back and forth
2021-10-16 16:11:50 -07:00
transistor
853626584e
Once again modified how the memory addressing works
2021-10-16 10:58:27 -07:00
transistor
ffd4faa9a3
Fixed decode of EXT, and fixed some bugs with 020+ code
2021-10-15 14:37:31 -07:00
transistor
eba1f9c9fc
Fixed bug with ANDtoSR, which was actually using "or"
2021-10-14 22:04:14 -07:00
transistor
43b1abfa19
Minor changes
2021-10-14 21:16:31 -07:00
transistor
e558fc01bf
Refactored and fixed some warnings
2021-10-11 15:16:04 -07:00
transistor
fbb5153121
Refactored mc68681 to make a common port struct and fixed a bug in DIV
2021-10-09 17:35:23 -07:00
transistor
f0637e81f1
Added separate interrupt controller
2021-10-09 11:00:32 -07:00
transistor
c4f41d73ab
Put the types and traits from system into new devices file
2021-10-08 23:11:52 -07:00