Commit Graph

29 Commits

Author SHA1 Message Date
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
Lior Halphon
8cd82ebb68 Quick Look icon generation for GameBoy ROMs, using screenshots from the actual ROMs 2017-01-20 18:35:20 +02:00
Lior Halphon
109af49933 Updated DMG boot ROM to finish with the same register values as the original boot ROM 2016-08-06 19:11:54 +03:00
Lior Halphon
ddc9605271 Load DMG's tilemap for specific games in the CGB boot (Fixes X's title screen and an unknown game with title checksum $43) 2016-04-16 13:50:29 +03:00
Lior Halphon
d63a801821 Fixed a mistake that made the CGB boot ROM not initialize the wave pattern. Closes #2. 2016-04-15 22:09:06 +03:00
Lior Halphon
f1e9623371 Initial public commit 2016-04-01 21:27:01 +03:00