We're using cookies to ensure you get the best experience on our website. More info
Understood
@horvatmRegistered December 28, 2008Active 4 months, 2 weeks ago
586 Replies made

I don’t have either game, but the PVB Usercenter might be helpful here (sorted by collection size).

So far, 648 users have indicated they have a non-empty collection. It might be possible to extrapolate some numbers from that data if KR155E runs some queries on the database, or at least see how common each game is in the members’ collections.

You don’t need a degree in computer science to make games for the Virtual Boy (though it won’t hurt).

But the Virtual Boy may help you get a job. 😉

Those “advertising” messages are normal. If you are using batteries and they are about to run out of power, you will also see “batteries low”.

I have attached a patch that you can use to remove all those messages except “batteries low”.

Attachments:

I had a quick look at the ROM. The main debug menu function (which prints the “round select” string at 40140 by calling 2E2C) seems to be at FF6 (F20 in “Kitaro’s” ROM), but it is indeed not called from anywhere.

If you set the PC to 7000FF6 in Mednafen’s debugger, you will get there, but the text won’t be visible because the worlds/charsets are not set up. From there, you can press L or use the left D-pad to get to the round selection mode (which seems to be buggy), or A to go to some other menu (function AA4), which will play one sound and then freeze.

At 12AA is the sound test function. You can access it by first setting the PC to 7000FF6, then to 70012AA (but not directly or it will freeze). You can use the left D-pad and A to choose and play sounds. Again, nothing of use will be visible on the screen.

To summarize, the important addresses are:
5CC: vbReadPad equivalent, never called directly but only from 7F4
AA4: Function that references the “another stage” string
7F4: Wrapper for 5CC, also resets the game on L+R+B+A+Select+Start
8BE: Called from within FF6, indirectly calls 5CC
FF6: Main debug menu function, references the “round select” string
12AA: Sound test mode function, references the “sound test mode” string
2E2C: Text printing function?
40000: “another stage”
40140: “round select”
4014D: “sound test mode”

I don’t have the source code (what are the rules regarding its usage anyway?), so this is just a stab in the dark. You might already know all this.

You can already change the font size in the configuration file. I must be missing something.

But what I would really like is the ability to have a large debugger display without also having to stretch the game display. I have to stretch it 3 times vertically to fit the debugger with a 9×18 font, but then games are almost impossible to play/test. Going full screen solves it, but it’s a little inconvenient.

And pressing Esc shouldn’t quit the emulator when I’m in the debugger!

Yes. On those cartridges, as well as the FlashBoy Plus, there are 8 kilobytes of SRAM, accessed as halfwords so every other byte is valid.

KR155E wrote:
It’s not that surprising, unfortunately, since this site still uses an ancient, almost 20 year old CMS and I am afraid we’re stuck with it until I get around to finishing the new site I have been working on…

Has XOOPS changed so much that upgrading is no longer possible without breaking things?

Well, there was this in February:

3,000 Databases with 200 Million Unique accounts found on Dark Web

I told KR155E but I don’t know whether he took any action. In any case, you should change your password.

And we were even mentioned, which is cool.

Bug: if you click 3D Models from the Development navigation menu, it brings you to the top Development page. You misspelled the URL. 😉

Or who designed the stand? Could be the bean counters’ fault. 😉

As I suspected, there are unused sound effects and even unused music in Virtual Lab.

At 537EC there is an array of 25 words pointing to all(?) sound effects and music tracks. The second one is the intro music, so modifying that one is the most convenient way to hear them all.

More details hopefully later.

I have also considered fixing Virtual Lab. I even asked Benjamin Stevens (the only other person who likes it, heh) for ideas a few years ago. But since the code is such a mess, it might be easier to just remake it from scratch (community project, anyone?).

I would still like to figure out the music format because I actually like the music and there is some data in the ROM that I don’t know the meaning of, so it’s possible that it’s unused music.

As for the review, I laughed at your comment about the price.

Interesting! Did you test all 2^32 values?

Unfortunately, given that LDSR and STSR take 8 cycles each, the fastest way to get the absolute value of an integer is still the routine on page 23 of V810 Programming.

If you’re interested in doing more reverse engineering, my notes might help: http://matejhorvat.si/en/vboy/vlab/

Basically (to explain it simply), it’s a combination of two reasons: the first is that each game assumes it is the only game on the cartridge, and the second is that neither the VB nor the FlashBoy have a MMU (memory management unit) that would bypass this problem.

I did make a proof of concept ROM where I joined Game Hero and Fishbone into one ROM (without having access to the games’ source code), but it didn’t work on hardware and I haven’t worked on it since.

Interesting! Next up: a chronology of precaution screens? 😉

Benjamin Stevens wrote:
Out of curiosity, did you look at the game code and save your own level maps to look at / have available while playing the game for the first time?

No, I just approached it as a normal player. I’ll have to play it a few more times to see all the levels.

RunnerPack wrote:
I’m not sure where you got the “officially” part of your above statement, since anything official would have been in Japanese, and whatever wasn’t likely used the actual English spelling “Innsmouth”. (Correct me if I’m wrong, though).

Look at the box. It says “INSMOUSE”. Whoever then first transliterated the game’s full title back to the Latin alphabet was probably not familiar with H. P. Lovecraft’s works and didn’t recognize that it’s a misspelling of Innsmouth. I actually prefer Insmouse, it gives it a unique character. 😉