dhg2
Random nobody
Level: 2
   
Posts: 1/1
EXP: 37 For next: 9
Since: 07-16-18
Since last post: 3.8 years Last activity: 3.8 years
|
|
Hello,
I was recently looking for strings inside various SNES ROMs I had lying around, and I discovered that Riverse Kids (othello game where you get rewarded with hentai for winning) is built on what seems to be some sort of interpreted programming language that looks a bit like a variant of BASIC. The code starts at 0x8000 in the ROM.
At the end of the code section, there's the text "MIHO for SNES", I wonder if that's the name of the language or the interpreter software.
I wrote a script to extract the program text from the ROM, with line numbers added. Here it is: http://dusthillguy.ddns.net/folder/files/quickupload/rivs_.txt
I don't know if the line numbers match up with the line number references in the program, I just counted each newline 0x0D character.
There's some binary data mixed in with the program text, I'm assuming from the context that those are text strings in Japanese. I've represented those as [xx] where xx is the byte value in decimal.
Riverse Kids doesn't have a page on TCRF at the moment, but I thought I'd post this on this forum anyway because this is the most appropriate place on the internet I could think of to post this information. I thought it was very interesting and I wanted to share it with people.
Regards,
dhg2 |
plateshutoverlock
User
Level: 7
   
Posts: 2/10
EXP: 1095 For next: 353
Since: 01-19-19
Since last post: 2.9 years Last activity: 265 days
|
|
Originally posted by dhg2 Hello,
I was recently looking for strings inside various SNES ROMs I had lying around, and I discovered that Riverse Kids (othello game where you get rewarded with hentai for winning) is built on what seems to be some sort of interpreted programming language that looks a bit like a variant of BASIC. The code starts at 0x8000 in the ROM.
At the end of the code section, there's the text "MIHO for SNES", I wonder if that's the name of the language or the interpreter software.
I wrote a script to extract the program text from the ROM, with line numbers added. Here it is: http://dusthillguy.ddns.net/folder/files/quickupload/rivs_.txt
I don't know if the line numbers match up with the line number references in the program, I just counted each newline 0x0D character.
There's some binary data mixed in with the program text, I'm assuming from the context that those are text strings in Japanese. I've represented those as [xx] where xx is the byte value in decimal.
Riverse Kids doesn't have a page on TCRF at the moment, but I thought I'd post this on this forum anyway because this is the most appropriate place on the internet I could think of to post this information. I thought it was very interesting and I wanted to share it with people.
Regards,
dhg2
I looked at the rivs_.txt file you provided, and yes, it's very interesting indeed. I just took a quick look
through this code, and noticed a huge block of "IF O=#(:CG GY##), where the #'s would be different numbers.
Example: IF O=14(:CG GY04)
I don't know what the "GY##"s are supposed to represent, but I am guessing maybe a memory block with code in it? Anyway, it would be much better have the if ## match the GY## and do a range check. Something like:
IF O < 33(:CG GYO)
Of course, there is no seperation between what I presume to be a function and the integer variable, so maybe they were forced to do it the 'dirty' way? Also, if the GY## is referencing blocks of memory, it would be easier to just write up a table of ifs than to try to rearrange the content in those blocks.
These lines are a bit intriguing:
IF O=11(:O=10)
IF O=33(:O=6)
Could this be some sort of correction or aliasing going on here? |