Skip to content
This repository has been archived by the owner on Jun 3, 2022. It is now read-only.

Bump up required RGBDS version (?) #7

Closed
FairPlay137 opened this issue May 5, 2018 · 6 comments
Closed

Bump up required RGBDS version (?) #7

FairPlay137 opened this issue May 5, 2018 · 6 comments

Comments

@FairPlay137
Copy link

FairPlay137 commented May 5, 2018

When I tried to build the ROM, RGBDS 0.3.3 produced a broken ROM that can't be considered "playable". It had somewhat broken graphics in the character select screen, and the overworld seemed to be broken too. This can be noticed in the nighty build that the ISSOtm website generates.
Building on RGBDS 0.3.5 thru 0.3.7 seemed to yield a better result, with a correct-looking character select screen, and a working overworld.

False alarm! 0.3.3 seems to be the troubled version!

@ISSOtm
Copy link
Owner

ISSOtm commented May 5, 2018

Interesting, normally the "brokenness" shouldn't depend on the RGBDS version? Might be a compiler bug fixed. Can you provide a diff of the 0.3.5 ROM and the 0.3.7 one, please?

@ParzivalWolfram
Copy link
Collaborator

ParzivalWolfram commented May 7, 2018 via email

@FairPlay137
Copy link
Author

Actually, after checking, the 0.3.3 one is broken, not the 0.3.5 one. The 0.3.5 one works perfectly, along with 0.3.7. I had a false alarm there. Perhaps close this issue?

@FairPlay137 FairPlay137 changed the title Bump up recommended RGBDS version Bump up required RGBDS version (?) May 7, 2018
@FairPlay137
Copy link
Author

FairPlay137 commented May 7, 2018

UPDATE: RGBDS 0.3.4 seems to produce a good ROM too, so it seems 0.3.3 isn't suitable for building this game anymore. I am unable to provide the ROMs at the moment due to time constraints though. (I will update this post with either the diff or the full ROMs though once I get the chance)

@ISSOtm
Copy link
Owner

ISSOtm commented May 7, 2018

It's known that versions prior to 0.3.3 won't work, due to lack of UNION support. I'll try to compile with different versions and produce diffs.

@ISSOtm
Copy link
Owner

ISSOtm commented May 7, 2018

I have first grabbed the RGBDS source ZIPs from the official release page, and compiled different versions of the ROM by manually re-writing the Makefile variables.
I've then produced diffs (using diff --speed-large-files <(od -An -tx1 -w1 -v 0.3.7.gbc) <(od -An -tx1 -w1 -v 0.3.X.gbc) > 0.3.X.diff) then manually grouping differences (aided by the ROM's SYM file).

Results:

  • 0.3.4 and 0.3.5 appear to be strictly identical to 0.3.7 (which I've used as my "reference" version)
  • 0.3.3 appears to have a different WRAMX allocation pattern, which I'm not sure why it happens. The three meaningful changes are some WRAMX variables changing banks (and location, for one of them). I'm not sure how that breaks the game, and it probably shouldn't.
  • 0.3.6 has a known bug, which shows up here, turning all jr @+1 "hax" into no-ops. This breaks at least the intro map, which relies on its map script to perform most actions, which is ran using such a jr @+1.

ZIP file (has ROMs, 0.3.7 SYM file, all diff files, and two annotation txt's)
0.3.x-comparison.zip


I'll be notifying in INSTALL.md that 0.3.6 should be avoided always, 0.3.3 might not always work, and bump the "latest compiling version" to 0.3.7.

@ISSOtm ISSOtm closed this as completed in 096642f May 8, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants