Page 2 of 2

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Thu May 18, 2017 4:52 pm
by rainwarrior
mikejmoffitt: I notice you revised your first answer, but I think supply problems were the main reason they made the deal they did, so it seemed to me like it was a pretty valid statement already. I was just trying to clarify further that it was a compromise as part of a lawsuit.

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Thu May 18, 2017 4:55 pm
by DementedPurple
Oh, and you thought that the Crazy Climber hardware was ugly, oh boy, don't even get me started. There was another version of this game that ran off of Scramble hardware, as well as one that ran off of Galaxian, and Moon Cresta. There's also totally different games like Donkey King, and Monkey Donkey, all which can be found here: [admin: ROM link removed]

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Thu May 18, 2017 4:55 pm
by Punch
Supply problems of the original Donkey Kong plus Crazy Climber install base? I don't know.

You'd be surprised at the unofficial arcade ports you can find. Taito's brazilian branch did a lot of unlicensed ports for their older games' hardware (galaga iirc??), including a speech synthesis enabled "Kong", for example (video of game being played in Taito's offices: https://www.youtube.com/watch?v=M9N1LbNksuM, I have no idea if it was ever released WITH the voice module).

There's a list of their bootlegged arcade and pinball machines here: https://en.wikipedia.org/wiki/Taito_of_Brazil

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Thu May 18, 2017 5:07 pm
by Memblers
DementedPurple wrote:
rainwarrior wrote:Do you own a Crazy Kong machine, or is it a game you grew up with or something?

I'm curious why you're interested in making it look more like Donkey Kong, since there is already Donkey Kong.
I just thought it would be a fun challenge. I don't have a machine, as a matter of fact, I don't own a single arcade machine. I'm going to hack it with MAME. Speaking of which, how would I hack a MAME ROM?
If there is no other documentation on the hardware (I doubt there is), you could look at MAME's driver. Even if you don't know C yet, you could probably make sense of the memory map it uses and if you're lucky there will be some helpful comments in the source. You'll look at where the individual ROMs were mapped into memory, then use a disassembler on them. You can probably copy all the ROMs into one contiguous file. If you find a manual for the game, there is a good chance it will have the full schematic for the hardware (this was common for early arcade games).

As for changing the colors, I have no idea what Crazy Climber does, but I think it was fairly common to use a bipolar PROM such as an 82S123 to store the palette for the game, I guess because they have really fast access timing (the palette ROMs on my Millipede board definitely run hot, the board has turned brown beneath them!). I don't know if MAME would emulate that, or just have it hardcoded into the driver. But if you see some little 32-byte or similar ROM files, it's probably the palette memory.

There is one danger of using MAME for testing.. MAME really only emulates the hardware accurately enough for the game to work. I guess you wouldn't have much to worry about if you made small changes carefully. It's more of a concern for someone wanting to code something from scratch. But there's still a chance you could come up with something that works in MAME but won't on the real hardware.

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Thu May 18, 2017 8:11 pm
by Drew Sebastino
DementedPurple wrote:how would I hack a MAME ROM?
Ohh boy... :lol:

For what I found out about the Irem M92, you first want to extract the zip file, and then try and find out exactly what each file is responsible for. For example, I found out what files on the M92 are responsible for graphics by opening each one up in yychr and looking for something that didn't totally resemble garbage. For the M92, graphics for both sprites and BGs are spread across 4 bitplanes in different files; I don't know if that's common and like that for this system, but if it is, expect 2 files for sprites and 2 files for BGs, as it will be 2bpp. For sound data, I opened the other files in audacity until I heard something, but I doubt you will be able to do that here, as I doubt there is any PCM in this game (judging by the time period; I haven't actually looked at it). For the rest of the files, I just overwrote each one with garbage in a hex editor and saw what wasn't working with the game. (For example, messing with either of the sound program rom killed the sound. You can use this "method" with the graphics files too, obviously.) With these old games, I've found that both tilemaps and palettes are actually have their own roms, so look out for that.

If you're looking to do something beyond a graphics hack, you need to look up what CPU the arcade machine uses, but you also really do need to try and be able to read the Mame driver source code, because otherwise, you won't know what the hardware registers are. Obviously, this implies that you know what files hold the program anyway. For the M92, it was across two files that were interleaved (each file had 8 of 16 bits), but I imagine they'd be in one here considering the CPU probably only has an 8 bit data bus.

Anyway, to test the game, put everything in a zip file with the exact same name it had, make a batch file like this:

Code: Select all

mame64 (name of zip file) -debug -nofilter
and then run it. The reason you can't run it in Mame regularly is because it does a checksum or something while loading the game, and will (idiotically) refuse to play if it doesn't match. This will actually also load a debugger too.

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Fri May 19, 2017 6:32 am
by Drag
MAME source code is hit or miss because there's so much collaboration, and some of the code was written during a time where speed was more important than source code readability. At least, that's what I noticed from looking at the source for the YM FM chips. I'm thankful that the source code is freely available to read, but sometimes it's very hard to understand depending on who wrote it.

If you're going to read the source code for a MAME driver, I highly recommend being familiar with C++, it's not going to be an easy task for a novice.

Re: Why did Crazy Kong run off of Crazy Climber hardware?

Posted: Mon May 22, 2017 8:30 pm
by kazblox
I think a while back that someone from MAMEdev said that part of Crazy Kong was somewhat rewritten (GFX handling and audio code, probably), while Kong from Taito De Brasil was a full on clone from scratch.

In terms of why it would run on this hardware, it's probably because of the cheaper hardware assembly (AY8910 and sample player compared to fully discrete audio plus DMA controller), and that copying Nintendo's board design would probably cost the manufacturer a lawsuit, if they were copyright pricks from the beginning, while Nichibitsu would care less at the time.

It's also possible that the manufacturer and developer had a bunch of leftover Crazy Climber PCB's as well, for whatever reason I would not know about.