magicfly: MAME ROM Information. History:
Magic Fly (c) 198? P&A Games.
- TECHNICAL -
Main CPU : M6502 (@ 625 Khz)
Screen orientation : Horizontal
Colors palette : 16
- SOURCES -
Game's rom.
MAME Info:
0.106u11 [Roberto Fresca, f205v]
SETUP:
- Insert coins to get credits. Choose a balloon to raise, and select it with SELECT button. Bet on other balloons using the SELECT/BET key (to bet 1 credit) or BETx10 (to bet 10 credits). Once done, press the DEAL/LAST BET key to start the game. All balloons will explode revealing numbers. The last one to explode will be the raised one. If your number(s) are higher than the one hidden in the raised balloon, you'll win! You can repeat the last bet pressing the DEAL/LAST BET key.
TEST MODE:
- Press F2 to enter the input test (game should be without credits). In the input test, you can exit with BET + DEAL, or access the bookkeeping mode pressing BET + DEAL again. In the bookkeping mode keep pressed the PAYOUT key and press BET to change the percentage (all books will be erased). Press again BET + DEAL to exit to a quick RAM & sound test, and then to game mode.
WIP:
- 0.143u8: Improvements to Magic Fly driver [Roberto Fresca]: Confirmed and fixed CPU clock for magicfly and 7mezzo. Rearranged the graphic ROMs addressing. Splitted both gfx banks. Created and minimized the color palette for both gfx banks. Fixed colors for magicfly and 7mezzo. Changed M6502 CPU1 clock speed to 625000 Hz.
- 0.128u2: Improvements to Magicfly driver [Roberto Fresca]: Added DAC sound support to magicfly and 7mezzo. Hooked coin counters to magicfly and 7mezzo. Inverted the graphics banks to be straight with the hardware accesses. Updated the memory map description and technical notes. Added game notes and documented the test/settings/bookkeeping modes.
- 31st October 2008: Roberto Fresca - Added Sigma-Delta DAC sound support to Magic Fly and 7 e Mezzo. Hooked coin counters to both games.
- 0.123u2: Changed palettesize to 256 colors.
- 0.115u1: Roberto Fresca fixed Magic Fly - Game now playable. Changed description to 'Magic Fly' and M6502 CPU clock speed to 833333 Hz. Added 'Maximum Bet' dipswitch.
- 12th May 2007: Roberto Fresca - Got magicfly and 7mezzo working. When the intro is running... Insert some coins. Choose a balloon and raise it. Then bet on the remaining balloons. When finish, balloons will start to explode... revealing numbers. Finally the risen balloon will show a number. If your balloons beat the risen one, you WON! In fact is a very addictive game. Here the list of changes: 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 dipswitches. Found the maximum bet dipswitch 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.
- 6th August 2006: Roberto Fresca - I found the bit that control the gfx banks. Based on this, I hooked the first graphics layer... After looked carefully to the rest of layers, I noticed that they are different bitplanes of 3bpp tiles instead of some kind of animation that I originally thought. Colors are still wrong, but the graphics are properly banked / decoded.
- 0.107u1: Changed description to 'Magic Fly (Ver 0.3)'.
- 27th July 2006: Roberto Fresca - Fixed the NMI / vblank stuff. Now the magicfly attract/intro works. Also confirmed the MC6845 mapped to $0800 - $0801. A piece of code initialize it writing to its registers. Analyzing the writes, I fixed the screen size and visible area. Now the aspect when render to 4:3 looks better. Input port at $2800: Code accept only bits 4, 6 & 7 as valid. If another bit is activated, will produce an I/O error. Lowered the CPU clock a bit. The text scroll in magicfly attract looks so fast with the former value. Resuming, the new changes are: Figured out the MC6845 (mapped at $0800-$0801). Fixed the screen size based on MC6845 registers. Fixed the visible area based on MC6845 registers. Fixed gfx rom region. Solved the NMI/vblank issue. Now attract works. Changed CPU clock to 625khz. (text scroll looks so fast with the former value). Added new findings to the technical notes. Added version/revision number to magicfly. Marked magicfly PAL as NO_DUMP (read protected). Added flags GAME_IMPERFECT_GRAPHICS and GAME_WRONG_COLORS. A lot of things remaining. gfx banks, colors, inputs, sound, the mysterious $3000 writes. How close and how far...
- 0.107: Changed M6502 CPU1 clock speed to 833333 Hz. Added player and service mode.
- 11th July 2006: Roberto Fresca - I made some improvements to the Magic Fly driver. Fixed the total number of chars to decode by rom. This allowed me to fix the graphics offset for the text layer and adjust the gfx rom region bounds properly. Just for testing purposes I tried a little hack to bypass some checks, and finally the game showed me something.
- 0.106u11: Roberto Fresca added Magic Fly (P&A Games 198?).
- 8th July 2006: Roberto Fresca - I decided to take a look to an old preliminary driver I started some time ago. This one is for "Magic Fly" and "7 e Mezzo", running in the same 6502 based hardware. Both games aren't working yet, but at least they initialize video and color ram. There are lot of things to do and fix, but today I submitted the driver "as is" to put the stuff "in a safe place".
- 18th September 2005: f205v dumped Magic Fly (ver 0.3).
Romset: 40 kb / 4 files / 6.35 zip
MAME XML Output:
   | <game name="magicfly" sourcefile="magicfly.c"> |
   |    | <description>Magic Fly</description> |
   |    | <year>198?</year> |
   |    | <manufacturer>P&A Games</manufacturer> |
   |    | <rom name="magicfly3_3.bin" size="16384" crc="c29798d5" sha1="bf92ac93d650398569b3ab79d01344e74a6d35be" region="maincpu" offset="c000"/> |
   |    | <rom name="magicfly2.bin" size="8192" crc="3596a45b" sha1="7ec32ec767d0883d05606beb588d8f27ba8f10a4" region="gfx" offset="0"/> |
   |    | <rom name="magicfly1.bin" size="8192" crc="724d330c" sha1="cce3923ce48634b27f0e7d29979cd36e7394ab37" region="gfx" offset="2000"/> |
   |    | <rom name="magicfly0.bin" size="8192" crc="44e3c9d6" sha1="677d25360d261bf2400f399b8015eeb529ad405e" region="gfx" offset="4000"/> |
   |    | <rom name="pal16r4a-magicfly.bin" size="260" status="nodump" region="plds" offset="0"/> |
   |    | <chip type="cpu" tag="maincpu" name="M6502" clock="625000"/> |
   |    | <chip type="audio" tag="mono" name="Speaker"/> |
   |    | <chip type="audio" tag="dac" name="DAC"/> |
   |    | <display tag="screen" type="raster" rotate="0" width="256" height="232" refresh="60.000000" /> |
   |    | <sound channels="1"/> |
   |    | <input players="1" buttons="5" coins="2" service="yes"> |
   |    |    | <control type="joy" ways="2"/> |
   |    | </input> |
   |    | <dipswitch name="Maximum Bet" tag="DSW0" mask="16"> |
   |    |    | <dipvalue name="20" value="16" default="yes"/> |
   |    |    | <dipvalue name="100" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unknown" tag="DSW0" mask="32"> |
   |    |    | <dipvalue name="Off" value="32" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unknown" tag="DSW0" mask="64"> |
   |    |    | <dipvalue name="Off" value="64" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unknown" tag="DSW0" mask="128"> |
   |    |    | <dipvalue name="Off" value="128" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <driver status="good" emulation="good" color="good" sound="good" graphic="good" savestate="unsupported" palettesize="32"/> |
|
|