PacMan Hardware Emulator
Baggers
Posts: 3,019
Some of you may, or may not know, but since I have been back on the prop in the last two weeks, or so, of spare time, I have been working on doing a PacMan hardware emulator.
I have the display emulated, on a separate prop, as it was proving too much memory for one prop, as the graphics has 4K of background characters, and 4K of sprites, and 2K of screen ram, + 32bytes of sprite info, this is all working on a separate prop, to free up space.
I have however run out of room on the second prop, as it was taken up by 16K of code ROM + 2K of screen ram ( incase it needs to read it ) + 1K of ram + the QZ80 emulator which eats a big chunk.
I was going to do it initially on my dracblade, but on getting it out the drawer, I accidentally bent what I think was a regulator, as it went under the cupboard, and thus I don't know which piece it was.
Coley is popping around on Monday to look at fixing it for me, so I'll move it over to that.
So I was doing it on two proto-boards with pins 0-15 wired together for coms, but unfortunately ran out of ram space once getting the roms and z80 emu started and getting the system variables in.
Once my Dracblade is working again I'll continue with it, and post vids, demos, and source.
Also, this will probably be the first thing I convert for PropII when it's out.
I have the display emulated, on a separate prop, as it was proving too much memory for one prop, as the graphics has 4K of background characters, and 4K of sprites, and 2K of screen ram, + 32bytes of sprite info, this is all working on a separate prop, to free up space.
I have however run out of room on the second prop, as it was taken up by 16K of code ROM + 2K of screen ram ( incase it needs to read it ) + 1K of ram + the QZ80 emulator which eats a big chunk.
I was going to do it initially on my dracblade, but on getting it out the drawer, I accidentally bent what I think was a regulator, as it went under the cupboard, and thus I don't know which piece it was.
Coley is popping around on Monday to look at fixing it for me, so I'll move it over to that.
So I was doing it on two proto-boards with pins 0-15 wired together for coms, but unfortunately ran out of ram space once getting the roms and z80 emu started and getting the system variables in.
Once my Dracblade is working again I'll continue with it, and post vids, demos, and source.
Also, this will probably be the first thing I convert for PropII when it's out.
Comments
Paul
Oh no!
Well, it probably was the 5 pin 5V regulator as that is the component that sticks up the most. So if you can't find it, you could replace that with any old 7805 regulator. I don't know which board version you have but some of them had spare pads for other regulators.
Dr_Acula, Yes, it's a 5pin one, so it'll be the voltage regulator. The board has Propeller Zicog V2 on it, if that's any help
As a curious young man, I would love to know how those old video game arcades work. They don't have much memory to spare back then, and only stuck with a Z80, but it works wonders! Now we have the graphic cards which squeezes out billions of numbers together per second, and huge pool of memory.
I just bumped into a list of arcade manuals and you can guess a bit more of how it works. It's not reverse-engineering, but on understanding how these work. Here's the link: http://www.mikesarcade.com/arcade/manuals.html Find the "Pac Man" and you will get the manual.
I love to see the results of the work. I wanna build one myself too in the future.
Hey Drac,
Have you got a schematic of the dracblade available, if so can you post a link please.
Many thanks,
Coely
I think this might be an earlier version, but the power supply part didn't change except for extra pads for other regulators.
Are you the first to practice the art of inverse retro. Taking a game and porting to hardware that is older than he game?
This could start a whole new trend.
I have no idea Heater, quite possibly so
Would be nice to start a whole new trend!
Do you have the schematic for that?
Cheers,
Jim.
Interesting, as far as I know ZiCog has never made such a board.
I too thought it was strange, as I thought it was a Dracblade, all this time!
It does have 'Propeller Zicog V2' on the board, having never seen a Dracblade before I guess I had nothing to compare it to....
The only thing I haven't done is to try to program it but the 5V and 3V3 LED's are lit and the voltages are correct.
Will pop it in the post to you tomorrow.
Regards,
Coley
Glad to hear you have it working again.
There's no graphics chip on those old arcades and I begin to wonder did they use discrete components for all that. I saw the seperate v-sync, h-sync, R, G and B lines inside with individual ROMs and RAMs connected to these as well. They have other ROMs and RAMs for the game data.
It's tough to understand these, but if I can get the picture, voila, I get to create my own video generator.
Dr_Acula, yeah, I'm glad too, great little board!
John, yes, I think it was discrete components for it, back in the early days, the graphics ROMs in PacMan are separate to the game code ROMs, one 4K EEPROM for background tiles, and one 4K EEPROM for sprite images, and 4 x 4K EEPROMs for the game code+data.
Back then, there wasn't FPGA or wasn't much custom circuits - hence the discrete components on the video board.
I tried 'dissecting' the Pacman video board for a few minutes to see that some of the graphics RAMs are indeed serial-like. It has a parallel address, but with a serial data out. I guessed the serial out leads to another batch of multiplexing circuitries and then forms a continuous burst of 256-pixels for each color channel. Pretty amazing for discrete components.
Plus, games like that probably rely on a lot of mid-screen interrupts (when it reach 120 h-blanks) and end-screen interrupts (exactly 240 h-blanks) to the processor to 'force' the processor to calculate anything in the game, from collision detection to other stuff.
I admit I have very limited knowledge on these, since I just glanced the schematics for like 1 hour.
Not to derail the topic, but what were the arcade games you ported for Ocean and what computers were they for?
Hi JT Cook,
They were Cabal and Midnight Resistance, for the ZX Spectrum ( 48K and 128K tape and disk ) and Amstrad CPC range ( 64K and 128K tape and disk ).
Ocean did a bland job (technically) on porting games to the Amiga though. The only quality (technically speaking) Ocean games from the pre SNES era was Pang and Toki.
Btw, It's amazing that the Amiga (a computer from 1985) actually outperforms a SNES (a gaming consol from 1990) in some areas when it comes to games.
Of course as you have a 6581 as your Avatar, you would be slightly biased towards Commodore versions
Very true, Pang and Toki were great!