> > Out of curiosity, has anyone been putting effort into decrypting the x-in-1 boards?
> > I'm less interested in this from the standpoint of seeing them emulated (which,
> > is pretty much a 'who cares' sort of thing), but am interested in seeing what the
> > underlying code for both the UI and emulator may be.
> 39-in-1 runs (slowly). When it's booting up and listing each game, it's actually
> emulating it until the POST is complete, inserting a coin, and then save-stating it
> to RAM. This is why each game takes a wildly different amount of time for its name to
> be printed during that startup.
OK, that fills in one of the questions I've had regarding those boards' initial POST behaviour and is actually kinda cool. A bit bass-ackwards IMHO - they could have just loaded pre-generated save states from storage into RAM rather than creating them on the fly at each boot - but I guess that doing it that way saved $0.17 per board on the BOM or something
> Then when you pick a game to run it just resumes that save state. It's possible in
> the MAME debugger to skip that step; it starts up immediately but when you pick a
> game it then just POSTs and goes through attract mode
Given the intended application of these boards, it makes sense: with near-instantaneous game switching being desirable, this would certainly be one way of achieving it.
> I strongly believe the emulator is MAME although I haven't tried to decompile it or
> anything, and they did a good job scrubbing it for tell-tale strings (as opposed to
> Konami's PS2 classics series, which has Aaron's name in it and the MAME version
> string). The game selection and the timeframe pretty much guarantees that.
I seem to recall someone mentioning several years ago that there was an in-game giveaway in one of the 39-in-1's games as to the boards' MAME origins. Specifics escape me right now, but I want to say that it was something along the lines of a later-fixed bug specific to MAME's emulation of that particular game being triggered in one of the drivers during gameplay; this at least pegged it to a MAME version less than n.
That said, it's a pretty weak memory. I could be confusing it with something else.