3 ms·
There is an awesome disassembly of the code available: http://www.romhacking.net/docs/344/ http://www.romhacking.net/docs/344/ . Almost every line is commented,
by Luc 16y ago
There is an awesome disassembly of the code available: http://www.romhacking.net/docs/344/ http://www.romhacking.net/docs/344/ . Almost every line is commented, so it's possible to follow along without knowing too much 6502.
I took a very quick look at it. If you search for 'L_GroundArea1', you'll find the level data for area 3-3. Notice the end-of-data marker is $fd. I then searched for this value, and found the 'ProcessAreaData' subroutine compares against it. By the look of it, this routine decodes new level tiles, except if $fd is found, in which case it just leaves the current tile in the buffer.