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