summaryrefslogtreecommitdiff
path: root/vdp.c
AgeCommit message (Collapse)Author
2017-01-05BlastEm now passes all of the tests on the first page of "Megadrive VDP ↵Michael Pavone
Test" in VDPTEST.sms
2017-01-04Fix to pass a couple more tests in VDPTEST.smsMichael Pavone
2017-01-04Fix some issues with VDP interface in Mode 4/PBC modeMichael Pavone
2017-01-04Display both byte and word pending values to better reflect VDP pending ↵Michael Pavone
state in PBC mode
2017-01-04Don't lock up CPU if performing a read with writes configured when in PBC ↵Michael Pavone
mode. Allow access to VDP debug commands from Z80 debugger in PBC mode. Handle Mode 4 in VDP debug print functions
2017-01-02Fix Mode 4 sprite table Y scan to account for VRAM byte swappingMichael Pavone
2017-01-01Fix slot tracking screwupMichael Pavone
2017-01-01Fix horizontal scrolling in Mode 4Michael Pavone
2017-01-01Update Mode 4 rendering to match logic analyzer capturesMichael Pavone
2017-01-01Fix a bug in hslot advancement in Mode 4. Fix some of the "inactive_start" ↵Michael Pavone
calculations that did not take into account Mode 4.
2017-01-01Make Mode 4 sprite rendering a little less brokenMichael Pavone
2017-01-01Fix rendering of BG color index 0 in Mode 4. Only transparent with respect ↵Michael Pavone
to sprites and not the backdrop like in Mode 5
2016-12-27Fix Mode 4 color mappingMichael Pavone
2016-12-27Brighten up Mode 4 colorsMichael Pavone
2016-12-27The function of the HVC Latch enable bit in mode register 1 is different ↵Michael Pavone
when not in mode 5
2016-12-27Fix inactive start line for Mode 4 in vdp_next_hint. Fix an off by one error ↵Michael Pavone
in the range of registers allowed to be written in Mode 4
2016-12-27Implemented Mode 4 sprite list terminationMichael Pavone
2016-12-27Less broken Mode 4 implementationMichael Pavone
2016-12-27Somewhat broken implementation of Mode 4Michael Pavone
2016-12-22Initial support for Genesis/Megadrive PBC mode. VDP still needs Mode 4 to be ↵Michael Pavone
useful.
2016-12-12Fix field flag handling bug introduced with VDP/render interface cleanupMichael Pavone
2016-12-09WIP split of ROM loading/argument parsing from Genesis emulation code. ↵Michael Pavone
Compiles and doesn't crash, but nothing works. Still a few too many globals as well.
2016-11-28Clean up symbol visiblity and delete a ltitle bit of dead codeMichael Pavone
2016-08-22Cleanup the separation of render backend and VDP code in preparation for ↵Michael Pavone
having extra debug windows. Make determination of H40/H32 based on number of lines in each mode.
2016-08-12Removed obsolete TOODMichael Pavone
2016-05-15Fix bug in vflip implementation when in double resolution interlace modeMichael Pavone
2016-05-11Fix implementation of sprite collision flag. Old implementation did not make ↵Michael Pavone
sense.
2016-05-02Fix GST savestate loading to deal with SAT cache to fix sprite corruption on ↵Michael Pavone
savestate load. Clear out Z80 native_pc so the Z80 state does not get hosed when loading a savestate while the emulator is already running
2016-04-30Fix bug in SAT cache address calculation that caused a crash in Strider IIMichael Pavone
2016-04-30Added TODO for hardware checkingMichael Pavone
2016-04-30Set sprite overflow flag if we completely consume sprite rendering capacity ↵Michael Pavone
for the line even if there is nothing left to draw. This graphical corruption in the vertical stretching scroll section. Needs hardware confirmation.
2016-04-30Implement SAT cache. Causes some graphical corruption in Overdrive due to an ↵Michael Pavone
unrelated bug.
2016-04-30Fix some stuff with interrupt timing. The change in adjust_int_cycle gets ↵Michael Pavone
Overdrive working again (vint was not being preferred over hint in some cases). One of the changes seems to have broken Fatal Rewind again, but no other regressions that I can see.
2016-04-27Properly emulate machine freeze when reading from VDP while configured for ↵Michael Pavone
writes
2016-04-24FIFO should show as empty during a DMA fill after the initial write is done. ↵Michael Pavone
BlastEm now gets a perfect score in VDP FIFO Testing
2016-04-24Fixes to the DMA busy flag and DMA fill. Now up to 120/122 on VDP FIFO Testing.Michael Pavone
2016-04-24Half assed, prefetch based open bus value emulation. Gets BlastEm up to ↵Michael Pavone
119/122 in VDP FIFO Testing
2016-04-24Implemented VDP read prefetch and made DMA copy not use the FIFO any more. ↵Michael Pavone
Now up to 114 out of 122 passing on VDP FIFO Test ROM
2016-04-12Remove the int number argument to vdp_int_ack since it is no longer usedMichael Pavone
2016-04-12Fix VDP interrupt ack. Big thanks to Eke-Eke or whoever left that helpful ↵Michael Pavone
comment in Genesis Plus GX. Fixes Fatal Rewind
2016-02-02Change the sentinel value for the hslot parameter of run_dma_src to ↵Michael Pavone
something that is not a valid slot number and actually use it for calls during the active display period
2016-02-02Perform the same slot mapping shift for H32 mode as I did for H40Michael Pavone
2016-01-28Shift slot number to slot behavior mapping by six slots in H40 mode. This ↵Michael Pavone
makes the line change slot align with the point at which the display turns on and off at the end of the active display area. Also fixed a regression in which an external slot got accidentally changed into a sprite draw slot
2016-01-26After reviewing the results of my test ROM again it seems pretty clear that ↵Michael Pavone
the VBlank flag gets set at the same time as the vcounter changes
2016-01-17Fix calculation of window start column when it's on the right side. This ↵Michael Pavone
removes graphical glitches in Afterburner 2, Fireshark and Dungeons and Dragons: Warriors of the Eternal Sun and probably others
2015-11-13Selecting a second game from the menu now worksMichael Pavone
2015-08-03Pretty decent optimization of vdp_h40 and vdp_h32. Gets reasonably close to ↵Michael Pavone
the speed of 0.2.0 in the worst case and is faster than 0.2.0 in others
2015-07-17Add ability to change start address for VRAM viewer. Fix handling of DMA ↵Michael Pavone
enable flag when it comes to DMA fills. This fixes a bug in James Pond 3
2015-06-28More clang warning cleanupMichael Pavone
2015-05-30Fixed shadow/highlight modeMichael Pavone