Robbie's To-Do List
Rewrite the vp906iii driver.Emulate protection in Magic Fly.Emulate protection in 7 e Mezzo.Hook the inputs properly in pmpoker.c games.Demux and rework inputs in Magic Fly and 7 e Mezzo.Rewrite the ampoker2 driver.Fix graphics and other issues of Magic Card.Emulate the Royal Vegas Joker Card series.Add support to 3-deal version of Jolly Card.Write a new driver for SANDII' games.Write a new driver for GAME-A-TRON gambling games.Find the algorithm to proper decrypt TAB blue PCBs.Switch the Sandii' games color system to RESNET calculations.Demultiplex the lamps matrix and add lamps support for all Sandii' games.Write a new driver for Lucky 74 (Wing) hardware.Re-rewrite the gdrawpkr (ex vp906iii) driver.Add discrete sound to Golden Poker / Potten's Poker games.Rewrite the pmpoker driver.Try to discover the sound system of Magic Fly and 7 e Mezzo.Write a new driver for Joker's Wild (Sigma) hardware.- Rewrite the ltcasino driver.
Details / Status
Rewrite the vp906iii driver:
- Done.
- Rearranged GFX in two different banks.
- Decoded GFX properly.
- Rewrote the memory map based on program ROMs analysis.
- Hooked two SY6520/6280 (M6821) PIAs for I/O.
- Hooked the SY6545 (6845) CRT controller.
- Fixed size for screen total and visible area based on SY6545 CRTC registers.
- Added all inputs through PIAs.
- Added proper sound through AY8910 (mapped at $0840-$0841).
- Fixed AY8910 volume to avoid clips.
- Proper colors through color PROM decode.
- Demuxed inputs (thanks to Dox that pointed me in the right direction)
- Added some game-protection workaround.
- Added NVRAM support.
- Renamed driver, set and description to match the real game.
- Added technical notes.
Emulate protection in Magic Fly:
- Done.
- Added proper emulation to the game protection that allow boot the game without patchs/hacks.
Emulate protection in 7 e Mezzo:
- Done.
- Added proper emulation to the game protection that allow boot the game without patchs/hacks.
Hook the inputs properly in pmpoker.c games:
- Done.
- Removed all inputs hacks.
- Connected both PIAs properly.
- Demuxed all inputs for each game.
- Documented all outputs.
- Added lamps support.
- Created different layout files to cover each game.
- Add NVRAM support to all games.
- Corrected the color PROM status for each set.
- Figured out most of the DIP switches.
- Added diplocations to goldnpkb.
- Replaced the remaining IPT_SERVICE with IPT_BUTTON for regular buttons.
- Updated technical notes.
- Cleaned up the driver. Now is better organized and documented.
Demux and rework inputs in Magic Fly and 7 e Mezzo
- Done.
- Figured out how the protection works.
- Removed the hacks/patchs that formerly allow boot the games.
- Figured out how the buffered inputs works.
- Demuxed all inputs for both games.
- Unified the memory maps from both games.
- Added NVRAM support to both games.
- Crystal documented via #define.
- CPU clock derived from #defined crystal value.
- Changed CPU clock to 833 kHz.
- Mapped DIP switches.
- Found the maximum bet DIP switch in magicfly.
- Removed flag GAME_NOT_WORKING for both games.
- Managed the planes to get the 3bpp GFX colors accurate.
- Renamed the ROMs acording to pcb pictures and ROM contents.
- Cleaned up and optimized the driver.
- Reworked/updated technical notes.
Rewrite the ampoker2 driver:
- Done.
- Crystal documented via #define.
- CPU and sound clocks derived from #defined crystal value.
- Reworked TILE_GET_INFO to handle the proper tiles/color codes.
- Fixed interrupts (NMI).
- Corrected AY8910 frequency to 1.5 MHz to match the real thing.
- Arranged the AY8910 volume in all games to avoid clips.
- Corrected the screen visible area.
- Added NVRAM support.
- Reworked the memory map, mapping all the hardware I/O ports.
- Reworked the Inputs for all sets.
- Added implementation of Operator and Supervisor Keys.
- Fixed some timing troubles.
- Mapped the input buttons in the same way I mapped them in other poker games.
- Added partial DIP switch support with diplocations to all sets.
- Removed the hack in DRIVER_INIT.
- Hooked write handlers for output ports.
- Added watchdog routines.
- Dumped, hooked, wired and decoded the color PROM in all sets. Colors are perfect.
- Modified the refresh rate to 60 fps according to hardware measurements.
- Cleaned up and renamed all sets, defining parent-clone relationship.
- Wired the lamps for all sets. Created their respective layouts.
- Updated flags in game drivers.
- Splitted the driver to driver/video.
- Other minor fixes.
- New set dumped/added: American Poker 95.
- New set dumped/added: American Poker 2 (bootleg, set 1).
- New set dumped/added: Sigma Poker.
- New set dumped/added: Sigma Poker 2000.
- Fixed graphics/tiles in Sigma Poker 2000.
- Rewritten the technical notes from the scratch (still in progress).
- Added a PCB layout to the technical notes.
Fix graphics and other issues of Magic Card:
- Done.
Emulate the Royal Vegas Joker Card series:
- They come in two flavors: Fast and Slow draw. Both emulated.
Add support to 3-deal version of Jolly Card:
- Done.
Write a new driver for SANDII' games:
- Done. All games are working properly with sound.
Write a new driver for GAME-A-TRON gambling games:
- Done. Both games are working properly, but without sound due to unidentified sound device.
EDITED (2008/09) - Added PSG sound and lamps support.
Find the algorithm to proper decrypt TAB blue PCBs:
- Done. Decryption tables were replaced with the proper algorithm.
Switch the Sandii' games color system to RESNET calculations:
- Done.
Demultiplex the lamps matrix and add lamps support for all Sandii' games:
- Done.
Write a new driver for Lucky 74 (Wing) hardware:
- Done.
- Set the proper screen size.
- Decoded graphics.
- Decoded the dual-state color circuitry.
- Mapped the NVRAM, VRAM1-1, VRAM1-2, VRAM2-1 and VRAM2-2 properly.
- Emulated 2x PPI 8255 devices.
- Mapped the 4x DIP switches banks.
- Added PORT_DIPLOCATION to all DIP switches.
- Added DIP switches for 'Bet Max' and 'Limit'.
- Added DIP switches for 'Jackpot' and 'Pay Table'.
- Added the Memory Reset Switch.
- Added the 2nd video & color RAM.
- Added a 2nd tilemap for background graphics.
- Simplified the graphics banks.
- Fixed colors for foreground graphics.
- Fixed visible area to show the top of background graphics.
- Finally fixed colors for background graphics.
- Added all coinage DIP switches.
- Mapped all remaining inputs (service and player buttons).
- Added pulse time limitation to coins A, B & C.
- Switched to use 4x 8255 in replace of 2x 82c255 for I/O.
- Created a handler to feed the z80 port0 requests.
- Promoted lucky74s to 'working' state.
- Added an alternate set, but the program ROM looks like incomplete, protected or just a bad dump.
- Parent/clone relationship.
- Added technical notes.
- Pre-defined CPU and SND clocks.
- Switched the color system to RESNET.
Re-rewrite the gdrawpkr (ex vp906iii) driver:
A new rewrite is needed to add support for systems 903, 904, 905 & 906. These systems hold dozens of unknown/undumped games. Also the driver need a lot of changes.
- Done.
- Renamed the driver to calomega.c.
- Extended the driver to support all the other Cal Omega systems.
- Switched to XTAL def.
- Fixed CPU & sound clocks based on official diagrams.
- Replaced the AY-8910 with AY-8912 to match the real hardware.
- Unified some memory maps.
- Splitted machine in sys903 and sys905.
- Fixed memory map offsets for sys905.
- Added support to almost 40 new games + 2 diagnostics sets.
- Added a list of official/unofficial games, and their states.
- Fixed a bug introduced when extended the color PROM region to eliminate colortable lenght.
- Other changes/fixes.
- Cleaned up the driver following the MAME Coding Conventions.
- Improved the input system for some games.
- Fixed some wrong color codes.
- Lots of improvements on the input system.
- Adjusted the CPU adressing to 14 bits for systems 903/904.
- Adjusted the CPU adressing to 15 bits for system 905.
- Rewrote all the ROM loads based on these changes.
- Defined CPU, UART and sound clocks.
- Splitted the sound interface to cover different systems.
- Splitted the PIAs interfaces to cover different systems.
- Added sound to system 905 games.
- Added MACHINE_START and MACHINE_RESET to initialize the devices properly.
- Documented the systems 903/904 UART connections.
- Traced and added PIAs connection diagrams for systems 903/904/905.
- Hooked the missing DIP Switches bank to the AY8912 for system 903.
- Added preliminary serial/UART support to systems 903/904.
- Hooked the missing DIP Switches bank to the ACIA 6850 for systems 903/904. It allow to choose the proper transfer rate for UART.
- Fixed graphics ROM loads for different Hotline versions.
- Unified MACHINE_RESET for systems 903/904/905.
- Created a new handler to manage the first 4 bits of system 905's PIA1 portB as input mux selector. (905 is still not working)
- Renamed all roms of each set according to the systems schematics and official list.
- Cleaned-up the sets.
- Cleaned-up the driver.
- Updated technical notes.
Add discrete sound to Golden Poker / Potten's Poker games:
- Done.
Rewrite the pmpoker driver:
Currently working on this...
Try to discover the sound system of Magic Fly and 7 e Mezzo:
- Done.
Write a new driver for Joker's Wild (Sigma) hardware:
- Done.
A preliminary driver was submitted.
Rewrite the ltcasino driver:
Analyze the ltcasino & ltcasin2 program ROMs to fix all wrong aspects of emulation.