Commit Graph

55 Commits

Author SHA1 Message Date
Lior Halphon f237b1e9b9 CGB-0 support 2021-11-04 00:35:44 +02:00
Lior Halphon 18007f0e53 MGB support 2021-10-23 23:28:54 +03:00
Lior Halphon 1376c386a2 Slightly altered merge of #408 2021-10-20 21:49:02 +03:00
Lior Halphon 51be70275d Fix broken wave RAM initialization in the boot ROM 2021-09-22 17:59:20 +03:00
Lior Halphon 0ff882f3bc Actually do what the previous commit claimed to do 2021-07-28 00:47:19 +03:00
Lior Halphon b454ee28db Fix an issue where SameBoot gave DMG games the wrong palette and needlessly drew the DMG boot tilemap 2021-07-27 22:18:28 +03:00
SimpleTease 714227883f cross-compile friendly 2020-10-10 13:46:44 +00:00
Jakub Kądziołka 9c50a992af
pb12: check the return value of write 2020-09-17 20:01:21 +02:00
Lior Halphon a2e656a7c2 Fixed boot ROM regression; CGB games were given the wrong palettes 2020-06-24 20:34:52 +03:00
Lior Halphon 157123e118 Fix clearing OAM and initializeing wave RAM 2020-05-17 19:24:11 +03:00
Jakub Kądziołka 24220defd6
Save 16 bytes in the CGB boot ROM 2020-05-09 13:11:51 +02:00
Lior Halphon e063671816 No need to use malloc here, the buffer never gets large 2020-05-07 22:46:06 +03:00
Lior Halphon 8625b23c0d Whoops 2020-05-07 01:32:03 +03:00
Lior Halphon 7cff35368d Port to C to remove the Python dep, remove leftovers 2020-05-06 23:30:01 +03:00
Lior Halphon 184743637e Fix silly regression 2020-05-06 01:10:46 +03:00
Lior Halphon 730567dc60 Proper color mixing 2020-05-06 01:06:22 +03:00
Lior Halphon a3f261184d Optimize more 2020-05-05 01:44:48 +03:00
Lior Halphon f46f138e9f Clear VRAM correctly 2020-05-04 23:54:43 +03:00
Lior Halphon 72a90ba91c Hacky color blending 2020-05-04 02:17:03 +03:00
Lior Halphon 2225fd114c Handle 2bpp palettes 2020-05-04 02:07:19 +03:00
Jakub Kądziołka b057e0d10a
Save 4 more bytes in the CGB boot ROM 2020-05-03 23:07:53 +02:00
Jakub Kądziołka cb738190be
Add a 2bpp CGB boot ROM logo, pending palettes 2020-05-03 22:45:23 +02:00
Jakub Kądziołka 19126df7f4
Save 8 bytes in the CGB boot ROM 2020-05-03 22:41:56 +02:00
Lior Halphon 0cf168f32b Fixing inconsistent style 2020-04-24 20:37:57 +03:00
Lior Halphon ee939a3782 New boot ROM animation in the DMG boot ROM 2020-03-06 17:37:18 +02:00
Damian Yerrick 26cf970713 don't need logo-compress.c anymore 2019-07-16 17:04:23 -04:00
Damian Yerrick 4504de828a cgb_boot: Compress logo with PB8
The logo is compressed using PB8, a form of RLE with unary-coded
run lengths.  Each block representing 8 bytes consists of a control
byte, where each bit (MSB to LSB) is 0 for literal or 1 for repeat
previous, followed by the literals in that block.

PB8 compression is also used in a few NES games.  A variant called
PB16, where 1 means repeat 2 bytes back, is used in the Game Boy
port of 240p Test Suite and in Libbet and the Magic Floor.

Switching from logo-compress RLE to PB8 decreases the compressed
logo data size from 287 bytes to 253 bytes, saving 34 bytes.
The decompression code is also about 10 bytes smaller.
2019-07-16 16:58:16 -04:00
Lior Halphon 970a5f562b Fix #183 2019-06-22 18:16:55 +03:00
Lior Halphon 5a04054145 Style changes 2019-06-14 14:34:02 +03:00
Lior Halphon 8389c6a450 Long overdue capitalization fixes 2019-06-14 14:31:17 +03:00
Jakub Kądziołka c678407d1e
Compress the Sameboy logo. 117 bytes are now free 2019-06-10 17:45:14 +02:00
Jakub Kądziołka 8386aaf12f
Save 20 bytes in the CGB boot ROM 2019-06-09 15:15:08 +02:00
Lior Halphon a0c5baecd8 More realistic initial V/RAM values in the boot ROM. Fixes #150 and #91 2019-06-09 00:53:44 +03:00
Lior Halphon bb7fa95426 Fix incorrect register values when changing the color palette via the boot ROM 2019-06-08 13:37:49 +03:00
Lior Halphon cdc36f329e Added open dialog to the SDL GUI, misc fixes 2019-06-01 14:29:46 +03:00
Lior Halphon 10be34b5b2 Fix the fast CGB boot ROM booting with data on the second VRAM bank 2019-05-04 21:15:23 +03:00
Lior Halphon 241577a7f1 Merge branch 'master' into sgb 2018-12-02 00:15:07 +02:00
Lior Halphon a1c39173dd SGB2 boot ROM 2018-12-01 17:28:57 +02:00
Lior Halphon 3ba1364d60 Fixed a boot ROM bug that made a few Nintendo games use incorrect object palettes 2018-11-23 01:09:14 +02:00
Lior Halphon 44891d5c4a Initial code to support SGB, command “parsing”, replacement SGB boot ROM 2018-11-11 01:16:32 +02:00
Lior Halphon a47e3cc62c Remove code duplication in the QL fast boot ROM, should fix some glitched thumbnails 2018-11-10 21:10:09 +02:00
Lior Halphon afcb7b8579 Fixed a regression where DMG mode on CGB would not activate on most DMG games. Fixes #98 2018-07-10 20:28:36 +03:00
Lior Halphon 30f13bd28c More accurate CGB initial register values. Closes #80 2018-06-19 23:59:16 +03:00
Lior Halphon b1d65fd84f Fixed `boot_hwio-C` (for SameBoy’s boot). Closes #59 2018-04-03 20:10:11 +03:00
Lior Halphon e380a00b67 Fixed another timing regression with the CB opcodes 2018-03-29 21:06:53 +03:00
Lior Halphon 2cd5c49935 Made CGB boot more accurate, added AGB boot 2018-01-13 13:02:31 +02:00
Lior Halphon d62ff4eb75 Fixed timing issues with the DMG boot ROM. Closes #20. 2017-12-31 23:02:28 +02:00
Lior Halphon d171a0ccee Updating the DMG palette to match the new SDL GUI 2017-10-04 12:43:46 +03:00
Lior Halphon 204e22657b The CGB boot ROM will now not finish if the user is still selecting palettes 2017-06-09 19:52:40 +03:00
Lior Halphon 86837761fa Improved compatibility with SameBoy's boot ROM by removing the RAM bank switch (The original boot ROM does that for no reason, but eventually switches back to bank 1) 2017-02-15 22:37:43 +02:00