More actions
Benchmark for Gameboy | |
---|---|
General | |
Author | Leaf |
Type | Test Roms |
Version | 2005 |
License | Mixed |
System | DMG |
Last Updated | 2005/10/15 |
Links | |
Download | |
Website | |
Source | |
On 2ch's old PCs forum, there is a thread titled "Searching for Amicable Numbers Benchmark Thread".
Participants run a short BASIC program to search for the "Amicable Numbers". The goal is to compete for performance as the results can vary significantly depending on each machine's hardware configuration and the performance of the built-in BASIC interpreter.
However, due to the language issue, executing the program directly on the Game Boy was not possible. In order to participate, the program was ported to machine language for the Game Boy.
During the porting process, efforts were made to closely follow the flow of the original program. Variables were kept fixed at 16-bit, and only a general 16-bit/16-bit division routine was used. With further tuning, it's possible to achieve even better performance, and there seems to be plenty of room for experimentation - perhaps even rebuilding the program from scratch could yield faster results.
User guide
When you launch the ROM, the screen remains black, but it becomes responsive to input. Press B will trigger a sound, indicating the start of the calculation. The sound will play each time a result is obtained. The time measurement is done manually.
The results listed below were obtained by running the program on the actual device, recording the sound with recording software, and manually measuring the time. It should be fairly accurate.
Results:
- Manufacturer - Nintendo.
- Model name - Game Boy.
- CPU - Z80 custom.
- Clock - 4MHz.
- memory - 32KB ROM.
- Language - Machine language (assembler).
- Program changes - Corrected "FOR J=2 TO 1000" on line 110 to equivalent to "FOR J=2 TO 10000".
Score:
- 220,284 - 4 seconds 6.
- 1184,1210 - 2 minutes 14 seconds 8.
External links
- Author's website - http://mydocuments.g2.xrea.com/index.html