Cyclone Core Updated Again


notaz

Certified Guru
Joined
Aug 23, 2005
Messages
4,913
Location
Lithuania
Website
notaz.gp2x.de
Wanted to finish this long time ago, finally found enough time and it's there:
v0.0086
+ Cyclone now can be customized to better suit your project, see config.h .
+ Added an option to compress the jumptable at compile-time. Must call CycloneInit()
at runtime to decompress it if enabled (see config.h).
+ Added missing CHK opcode handler (used by SeaQuest DSV).
+ Added missing TAS opcode handler (Gargoyles,Bubba N Stix,...). As in real genesis,
memory write-back phase is ignored (but can be enabled in config.h if needed).
+ Added missing NBCD and TRAPV opcode handlers.
+ Added missing addressing mode for CMP/EOR.
+ Added some minor optimizations.
- Removed 216 handlers for 2927 opcodes which were generated for invalid addressing modes.
+ Fixed flags for ASL, NEG, NEGX, DIVU, ADDX, SUBX, ROXR.
+ Bugs fixed in MOVEP, LINK, ADDQ, DIVS handlers.
* Undocumented flags for CHK, ABCD, SBCD and NBCD are now emulated the same way as in Musashi.
+ Added Uninitialized Interrupt emulation.
+ Altered timing for about half of opcodes to match Musashi's.
[cut]
Known problems it fixes in my test genesis emulator:
+Fatal Rewind - hang
+Desert Strike - hang in briefing screen
+Jim Power - graphics corruption
+Gargoyles - invisible world
+SeaQuest DSV (E) - crash
+Jimmy White's Whirlwind Snooker - problems with game logic
+Asterix and the Great Rescue - graphics corruption
+Asterix and the Power of The Gods - graphics corruption
+Bubba N Stix - graphics corruption
+Cliffhanger
+Ex-Mutants
...more?

All opcode handlers were tested in brute-force manner against Musashi core and large amount bugs was fixed. Of course not all possible operand combinations were tested, but at least timing should be right now.

Other systems also should benefit, but as it still doesn't have the advanced stuff like trace flag emulation, function codes, address error emulation, ..., it is still not suitable for Amiga and other "advanced" hardware emulation.

Get it here.[/cut]

EDIT: added 2 more genesis games which are known to be fixed by this update.
 
Many thanks indeed... can't wait to give a certain game a try-out and see if it works now. Course, it's got to go into DrMD first, but hey.
 
Fantastic! Really excellent work - this will be worth it's weight in gold!

I'd love to add this to GP32 MAME ASAP! I'll also inform PalmMAME guy (vilmos) about this!

I'm sure this will fix the few remaining problems for this excellent ASM core!!! :D

Thank you very much!

EDIT: Can we download the new lib/source code somewhere?
EDIT AGAIN: Doh! Missed the little link in the original post!
 
wow! thanks for the great update! I've been wanting to try out gargoyles... maybe Time Killers will work right now, too :D

I didn't even know someone was still updating the Cyclone core! It's yet another great surprise in the last few weeks for us thankful GP2x owners! :D

thanks again!
 
Gngeo uses cyclone - so hopefully this will grab a few more frames there.
 
DijiTao posted on Jul 16 2006 at 11:42 PM said:
Gngeo uses cyclone - so hopefully this will grab a few more frames there.

Err... what does the Cyclone core represent? I can't find it in a Wiki/Google search...

I'm guessing one of the hardware cores since the Genesis/Neo Geo/some arcade machines do have some of the same hardware, but what is it called?
 
Last edited by a moderator:
DijiTao posted on Jul 17 2006 at 03:42 AM said:
Gngeo uses cyclone - so hopefully this will grab a few more frames there.

The update isn't for speed it is for compatability. No more frames just a few more games will work.
Hopefully it can now be used for Amiga and ST as those emus had problems with the old core.
 
Last edited by a moderator:
Shikaku posted on Jul 17 2006 at 01:46 PM said:
Err... what does the Cyclone core represent? I can't find it in a Wiki/Google search...

I'm guessing one of the hardware cores since the Genesis/Neo Geo/some arcade machines do have some of the same hardware, but what is it called?
It's a cpu emulator - specifically the 68000. The 68000 was used in a whole swag of machines:
Commodore Amiga, Atari ST, Sega Megadrive, Neo Geo. It's also a well used CPU for arcade machines. Capcom uses it with their CPS-1/CPS-2 machines (ie. Ghouls and Ghosts, Final Fight, Knights of the Round, 1941, etc) and Sega with it's System-16 machines (Strider, Shinobi, Goldem Axe, etc).
Many, many other machines also use it (Atari's Gauntlet and Xybots; Data-Easts Midnight Resistance and Heavy Barrel) too many to mention.

So emulators for the above machines will benefit.

Unfortunately, notaz has already mentioned that Amiga emulators still won't be able to utilize this release and some important features are missing.
 
Last edited by a moderator:
notaz posted on Jul 16 2006 at 11:31 PM said:
Wanted to finish this long time ago, finally found enough time and it's there:

Excellent news! Thanks a million! This means Desert Strike will finally work, woohoo!

slaanesh posted on Jul 17 2006 at 06:46 AM said:
Shikaku posted on Jul 17 2006 at 01:46 PM said:
Err... what does the Cyclone core represent? I can't find it in a Wiki/Google search...

I'm guessing one of the hardware cores since the Genesis/Neo Geo/some arcade machines do have some of the same hardware, but what is it called?
It's a cpu emulator - specifically the 68000. The 68000 was used in a whole swag of machines:
Commodore Amiga, Atari ST, Sega Megadrive, Neo Geo. It's also a well used CPU for arcade machines. Capcom uses it with their CPS-1/CPS-2 machines (ie. Ghouls and Ghosts, Final Fight, Knights of the Round, 1941, etc) and Sega with it's System-16 machines (Strider, Shinobi, Goldem Axe, etc).
Many, many other machines also use it (Atari's Gauntlet and Xybots; Data-Easts Midnight Resistance and Heavy Barrel) too many to mention.

So emulators for the above machines will benefit.

Unfortunately, notaz has already mentioned that Amiga emulators still won't be able to utilize this release and some important features are missing.


Afterburner, Space Harrier, Hang-on, (drools) :p
 
Last edited by a moderator:
notaz posted on Jul 16 2006 at 11:31 PM said:
Other systems also should benefit, but as it still doesn't have the advanced stuff like trace flag emulation, function codes, address error emulation, ..., it is still not suitable for Amiga and other "advanced" hardware emulation.

DaveC posted on Jul 17 2006 at 05:04 AM said:
Hopefully it can now be used for Amiga

Do you actually read posts before replying to them? :)

BTW, Notaz, nice work :)
 
Last edited by a moderator:
JimmySlam posted on Jul 17 2006 at 02:40 AM said:
Sounds good :D

But what can we use standard users for? ;)

Standard users aren't really good for anything but whining and drinking coffee. :)
 
Last edited by a moderator:
Back
Top