Pac-Man Level 255 1 vs 2 ROM mod

HudsonArcade

Well-known member
Joined
Aug 12, 2009
Messages
14,729
Reaction score
3,631
Location
01749, Massachusetts
Would anyone be interested in my Pac-Man Level 255 patch ? This patch modifies Pac-Man to start at level 255. If this level is completed the next level (level 256) is the kill screen. Two ROMs need to be patched, 6E and 6J. I have two versions of the patch, one which also supports free play and one which does not.

This was playable at California Extreme in a cabinet provided by Jonathan (jkoolpe) with a custom marquee and topper done by a former coworker of mine, Norm Badillo.

Why 2 roms? You can do it with just 6E.

Code:
068F: AF            xor  a
0690: 32 13 4E      ld   ($4E13),a 		; Board level

Change to:

Code:
0690: C3 F0 0F      jp   $0FF0
0FF0: 3E FE         ld   a,$FE
0FF2: 32 13 4E      ld   ($4E13),a 		; Board level
0FF5: C3 93 06      jp   $0693
0FFE: A4 7F					; Patch checksum

*yawn*
 
Nope, if you don't patch 6J then there is the possibility of Pac-Man getting stuck above or below the left tunnel entrance. Also you didn't change the difficulty.
 
Attached is my Pac-Man Level 255 patch.

Code:
Technical info:
--------------
The patch for the ROM at 6E changes the starting level to level 255. Note attract mode will reflect this change.

4E0A = pointer into level difficulty index table for current level
4E13 = current level (0-based)
4E73 = pointer to level difficulty index table (68 if easy or 7D if hard)

068F AF          XOR  A
0690 32 13 4E    LD   ($4E13),A   =>  C3 F0 0F    JP $0FF0      ;jump to patch

087D 06 0B       LD   B,$0B       =>  06 0A       LD B,$0A      ;one less to not reset level to 0
087F CF          RST  $08
0880 CD C9 24    CALL $24C9
0883 2A 73 4E    LD   HL,($4E73)  =>  21 7C 00    LD HL,$007C   ;set 9th key difficulty
0886 22 0A 4E    LD   ($4E0A),HL

0FF0 00 00                        =>  3E FE       LD A,$FE      ;load 254 (level 255)
0FF2 00 00 00                     =>  32 13 4E    LD ($4E13),A  ;set level
0FF5 00 00 00                     =>  C3 93 06    JP $0693      ;continue

0FFE 48 36                        =>  9D D6       updated checksum

The patch for the ROM at 6J prevents Pac-Man from getting stuck above or below the tunnel.

On the kill screen Pac-Man can wraparound from anywhere on the corrupted right side of screen and reappear on the left.
In most cases Pac-Man will pop into the maze but will get stuck in the areas just above or below the tunnel.
This happens because those areas are comprised of wall tiles (wall tiles are codes C0-FF) therefore an invisible tunnel
must be "carved" into those areas so that Pac-Man can turn around and wraparound back to the right.

3442 FC => BC   ;modify tiles above tunnel so Pac-Man doesn't get stuck
3448 FC => BC
345B FC => BC   ;modify tiles below tunnel so Pac-Man doesn't get stuck
3461 FC => BC

Note the ROM at 6J is not checksummed.

Could you add a switch on a larger eprom and double up like the tempest tubes patch?

http://www.pinrepair.com/video/tempest.htm
 
Could you add a switch on a larger eprom and double up like the tempest tubes patch?

http://www.pinrepair.com/video/tempest.htm

I'm purely a software developer and don't really know hardware or electronics. I take it you want a way to select between normal Pac-Man and Level 255. I suppose I could look into having the patch check the rack test dip switch (SW7) though rack test would no longer be available. If there is enough interest then I could look into this.
 
Why 2 roms? You can do it with just 6E.

Code:
068F: AF            xor  a
0690: 32 13 4E      ld   ($4E13),a 		; Board level

Change to:

Code:
0690: C3 F0 0F      jp   $0FF0
0FF0: 3E FE         ld   a,$FE
0FF2: 32 13 4E      ld   ($4E13),a 		; Board level
0FF5: C3 93 06      jp   $0693
0FFE: A4 7F					; Patch checksum

*yawn*

I was going to post this but I didn't even bother.

*double yawn*
 
As I detail in my patch, that simple little amateurish patch doesn't change the difficulty level so level 255 will play like level 1 and Pac-Man can get stuck above or below the tunnel which means the game will have to be reset.
 
Haha... "amateurish"...
Go look at the names who contributed to the disassembly you referenced to make the mod.

The point was to get to level 255 easily. How many players can clear level 254 on level 254 difficulty?
 
Haha... "amateurish"...
Go look at the names who contributed to the disassembly you referenced to make the mod.

The point was to get to level 255 easily. How many players can clear level 254 on level 254 difficulty?

Well it's not really level 255 if the difficulty isn't set to 9th key difficulty now is it ?

I disassembled the code myself without any other reference. All of the comments in the technical info in my patch are my own. Also I was the lead developer of Namco Museum 50th Anniversary and worked on several other emulation products at Backbone Entertainment and I contributed to MAME years ago (look in drivers\namcos1.c) and I've written many emulators for myself from scratch for DOS and Win32 so yeah it's amateurish relative to my experience.
 
Experienced developers should be smart enough to use available resources instead of reinventing the wheel -- that way it's a 5-minute job.
 
Experienced developers should be smart enough to use available resources instead of reinventing the wheel.

That is the desperate comment of someone who tried to spit venom at someone and discovered that they are out of their league and have been pwned.

I decided to share my Level 255 patch for anyone who is interested. You decided that it wasn't needed and posted a patch which was simpler and I told you why exactly it was simpler and amateurish then you basically tried to challenge me not knowing you were dealing with someone with a great deal of experience. Bottom line what you posted isn't very good but you're free to use it and not use mine. What is the point of going out of your way to spread negativity ?
 
brooks... just so you're aware who you're dealing with... HudsonArcade created the internet originally... but kept it for himself and when Al re-invented it, he was sure let us all know he'd already invented it and it was running on one of his boxes he has stored somewhere in one of his many storage rooms WAY before Al even thought about it.

Knowing is half the battle...
 
Cool patch. I think I tried the game at CAX this year. Was able to make it past 255 without dying too.

Mark, relax. You're not the only one that breaths air around here.
 
Mark, relax. You're not the only one that breaths air around here.

wIqArRM.gif
 
That is the desperate comment of someone who tried to spit venom at someone and discovered that they are out of their league and have been pwned.

I decided to share my Level 255 patch for anyone who is interested. You decided that it wasn't needed and posted a patch which was simpler and I told you why exactly it was simpler and amateurish then you basically tried to challenge me not knowing you were dealing with someone with a great deal of experience. Bottom line what you posted isn't very good but you're free to use it and not use mine. What is the point of going out of your way to spread negativity ?

*pat on the head*

I was simply posting information...
You were pretending it's arcane knowledge that only you could possibly possess.

Yes your hack does "more" -- who cares...
 
*pat on the head*

I was simply posting information...
You were pretending it's arcane knowledge that only you could possibly possess.

Yes your hack does "more" -- who cares...

I was simply sharing something I did for CAX that I thought other people in the community might enjoy. You decided that you didn't like it for whatever reason and basically tried to denigrate it and suggest I used someone else's work to make my patch. WRONG. I wrote the patch myself and tested it in a Pac-Man emulator I wrote myself. Now that you look foolish you say my patch does "more" and "who cares". Well the other patch isn't right but again you're free to use it as no one is forcing you to use mine.

P.S. if you're ever in the Bay Area then perhaps there's a guy at High Scores Arcade you might actually hit it off with as you strike me as someone with the same sort of bad attitude who goes out of their way to attack people when there is absolutely no reason to do so.
 
Back
Top Bottom