Phoenix (enhanced) freeplay

philmurr

Active member
vacBacker
Feedback
46 (100%)
Credits
2,350CR
I had a bit of spare time today so set about another freeplay mod, this time for Phoenix, a game that I love. The original game lacks any sort of free play, so this mod adds that using one of the unused DIPs, but also in an "enhanced" form where the attract mode keeps going, and doesn't sit there at the "press P1 or P2 start" screen.

I know a mod exists out there already, but it's of the paid-for variety, and I don't like paying for stuff if I can get away with it...

Phoenix code is horrible, 8085, bug-ridden and there are no reasonable-size chunks of ROM to play with, which means it's tricky to write any sort of hack. I think I'm there with it but it will need a fair amount testing (playing!) to make sure I'm not adding to the bugs before I release it. Photos of how it looks (running in Mame) below.

I'm also looking at fixing the 200,000 point bug (as described by Don Hodges) and making a proper high score save mod, let me know if there's any interest for me to take the time to do this.

Phoenix_free_play_demo_2.JPG
Phoenix_free_play_demo_1.JPG
 

philmurr

Active member
vacBacker
Feedback
46 (100%)
Credits
2,350CR
Muppz said:
one for me too, please.

ps is the 8085 like the 8039 where you have to jump to the next 256 byte page in ROM?

No it doesn't use pages, just a standard memory arrangement. Although it does have a shared address and data bus which makes hardware add-ons 'interesting'

It's just that there isn't much blank space in the Phoenix code, and what there is is all fragmented.

Thanks for the comments about the hack, I think there's enough interest to give it a go
smiley2.gif
 

RGP

Meeter & Greeter
Feedback
5 (100%)
Credits
2,039CR
This gets tons of play at the events.

If we can come up with maybe a hardware mod to fit some extra space in and give a high score table with initials the players would love it.

Any freeplay mod is a good mod in my books - you'd be surprised how many people can't find the crecit button with a huge arrow pointing towards it.
 

philmurr

Active member
vacBacker
Feedback
46 (100%)
Credits
2,350CR
RGP said:
If we can come up with maybe a hardware mod to fit some extra space in and give a high score table with initials the players would love it.

Any freeplay mod is a good mod in my books - you'd be surprised how many people can't find the crecit button with a huge arrow pointing towards it.

A high score save with initials is unlikely unless I can find a couple of hundred spare bytes. I've got a routine written but just not sure I can get it to fit.

A hardware mod for more ROM space is also unlikely because of the 8085 hardware architecture, the most I'm planning is an dual-2114 to NVRAM adaptor.

Then again I do like a challenge
smiley4.gif
 

philmurr

Active member
vacBacker
Feedback
46 (100%)
Credits
2,350CR
The freeplay code has been tested over the last few days and seems to work ok. You use one of the unused DIP switches (DIP 7) to select free play or normal (on=free play).

The code has been updated from last week so if the game is set for freeplay then it doesn't display "insert coins" etc. on the attract screen, but if set for coin play then it does show "insert coins" as normal. When set to free play, just press 1 or 2 player start to begin a game.

Phoenix_free_play_demo_3.JPG
Phoenix_free_play_demo_4.JPG


The code is for the Phoenix Amstar Mame ROMset (phoenix) IC45 - IC52 (referred to as ROMs 1-8 below). Just patch the relevant ROMs with the hex data shown.

ROM 1 0x001A CD D2 09
ROM 1 0x00F2 CD F3 32
ROM 1 0x00A3 CD F6 08
ROM 1 0x02EA C3 B8 08
ROM 1 0x00B2 C3 B8 08

ROM 2 0x08F6 3A 00 78 E6 40 C0 C3 E6 37
ROM 2 0x08B8 4F 3A 00 78 E6 40 79 C8 32 42 41 C9
ROM 2 0x09d2 3A 00 78 E6 40 C2 80 00 21 E8 09 11 02 42 06 08 CD ED 01 C3 80 00 06 12 05 05 10 0C 01 19

ROM 7 0x37E6 3A A2 43 B7 C0 21 00 70 7E E6 02 3E 01 CA FC 37 7E E6 04 3E 02 C0 32 8F 43 C9
ROM 7 0x32F3 01 02 00 3A 00 78 E6 40 C0 01 60 00 C9
 

philmurr

Active member
vacBacker
Feedback
46 (100%)
Credits
2,350CR
ROMs now uploaded to http://www.ukvac.com/forum/uploads/183/Phoenix_free_play_etc.zip

Use "ic46 - no NVRAM" in a real cab with no non-volatile RAM
use "ic46 - NVRAM" in mame (rename to "ic46") or in a real cab with non-volatile RAM

********************************************************************

A quick update on this. Spent a bit of time tidying things up, and now got the modified code to fit into just 2 ROMs (IC45 & IC46). It only works with the Amstar version, but as the hardware seems to be the same for all games, you can just use the full set of Amstar ROMs. Please PM me if you want the modified code (I'll only provide the modified ROMs, not the full set)

Feature list:-

;provides enhanced free play (attract mode in free play) selected by unused DIP
;prints free play when in free play mode
;doesn't ask you to insert coin when in free play mode
;high score saving in Mame for one high score even when you press reset
;prints high score sooner than when you press P1 or P2 to start a new game
;only checks DIP for freeplay mode at start of game
;press P1 and P2 at power-up to clear high score
;fixes 204,000 point bug (based on Don Hodges description but written more tidily)

One feature outstanding (that is supported by the above code), is to save the high score in NVRAM. I'm still experimenting with this because the NVRAM I have seems to be too fast to replace the slow 2114's used by Phoenix and causes corruption to the memory. The RAM decoding circuitry is horrible so it may take me a bit of time.

For now, if you use the code in a proper cab rather than Mame, press P1 & P2 on startup to clear the high score RAM to a known state.

philmurr2016-08-14 19:05:22
 

RGP

Meeter & Greeter
Feedback
5 (100%)
Credits
2,039CR
philmurr said:
;fixes 204,000 point bug (based on Don Hodges description but written more tidily)

Phil, this is fantastic work, I never actually knew how to do the 204,000 point bug thing but a lot of people do so if this fixes it, it levels the playing field a bit.

I know I mentioned it previously but I don't think I explained what my thoughts were - have you considered a similar hardware mod to a Braze DK High-Score kit which sits in the CPU socket and effectively obliterates the ROMs on the board? I'm not sure if its also possible to reroute the RAM through here too if you're having trouble with slow vs fast RAM.

ColinD might be one better to jump in here on this but that would give space for a proper table of scores.

I always marvel at how different games di and didn't have a high score table back then.

It amazes me that games like Pac-Man have been hacked to have a full high-score table and save.

There seems to be plenty of us getting into hardware production now that could help out.
 
Top