Alright!! I got Cyvern on the Super Kaneko Nova System working 100%
(@iq_132: with the speed hack working & with full cycles & with perfect music \o/
)
Heres a little detail on how it *painstakingly* came to be..
The first problem, get iq_132's brilliant and almost-finished d_suprnova.cpp to work with the latest FBA, this was just simple stuff like changing the BurnInfo structure's from the old to the new style.
The second problem - Cyvern would hang after the machine tests - this took about 4 hours of referencing the mame code, updating a few things here and there.. after a bit of almost going mad, and coming to a conclusion that this might never boot, I found a little piece of code that was commented - so I uncommented it, just "for the heck of it". And that fixed it
The third problem aka the greatly needed "speedhack". Let me tell ya, without this thing, the music chops up and the game is unplayable at 35-40FPS. Its just too intense [for my little p4 3ghz pc].
This bit of code, codenamed the "speedhack" caused the code to cut a few corners making the game run at proper 60FPS without any slowdowns or stutters... BUT...
Enabling the "speedhack" was not without consequences - It caused the background music to cut out randomly and caused the SFX to become lagged. After a day and a half of debugging, I came to the conclusion that the bug wasn't in the FBA driver at all, but in the Hitachi SH-2 CPU emulation - well... the function that burns cycles until the next interrupt, which allowed for the "speedhack" to work, was skipping over timer events that the game needs to keep the music playing. (I didn't know it was skipping these timer events until later on the next day...)
The third problem and a half - aka the next day - after making subtle changes to the SH-2 CPU core, recompiling, linking, loading the newly compiled FBA, loading Cyvern & testing the music - about 50 or 60 times, I realized I might have to look at things a little differently to get this fixed.. To make a long story a little less long, I took a break, thought about it for a while and realized that maybe some timer events were getting skipped when the "speedhack" went to burn cpu cycles until the next interrupt. I updated the SH-2 core, tested it out, and lo-and-behold - it worked!! I played a few games to make sure I wasn't dreaming, then came here to write this
The next FBA will not only have one fk'n awesome shooter game - Fire Barrel(Air Assault), but 2 of them
Tis a great day, my friends,
thats it for now & best regards,
- dink