Jump to content
doctorclu

Flashback Portable: Needed Controller Hacks

Recommended Posts

Guys...if you alter a ROM in any way, its profile checksum no longer matches. So it cannot be identified as using a special chip. The "Defender de-make" proves it.

 

More conversions I had disassemblies for...

 

To speed things along, I just altered the equate of VBLANK to be $2E instead of $01. That should correct migration issues. Custer's Revenge and Beat'Em & Eat'Em used VBLANK all over the place, no surprise those would not show up.

 

Jawbreaker and Marauder used $0288 for SWCHA, changed to be the normal $0280. That should fix the dpad.

Custer(portable).bin

Enduro(portable).bin

Jawbreaker(portable).bin

Lochjaw(portable).bin

Marauder(portable).bin

Sharkattack(portable).bin

Squeezebox(portable).bin

Wordsattack(portable).bin

Edited by Nukey Shay
  • Like 2

Share this post


Link to post
Share on other sites

Hmm...Acid Drop got clipped somehow. Trying this again...

Both this one and Words Attack are using non-standard displays (too many lines even for PAL). Those are gonna need work to cut down the display. Words Attack probably isn't worth the effort. Getting closer to 262 for Acid Drop, tho. Will post if I get something stable for the credit sequence.

Edited by Nukey Shay

Share this post


Link to post
Share on other sites

  • bin.gif Aciddrop(portable).bin 12KB ----- Well you know of the screen position, dpad works though. :D NTSC conversion version by Thomas Jentzsch did test out working though the title screen is positioned downward. Action screen on that is alright.

bin.gif Beatemandeatem(portable).bin 4KB ---- Are the women moved by the dpad? If so not responsive yet. (Show gameplay though, and that's a massive improvement.)

bin.gif Custer(portable).bin 4KB ---Works

bin.gif Enduro(portable).bin 4KB ----Works, screen position looks good.

bin.gif Jawbreaker(portable).bin 4KB ---Works (fun game) :D

bin.gif Lochjaw(portable).bin 4KB ----- Works, screen position looks good.

bin.gif Marauder(portable).bin 4KB ---- Works. (Top down Berzerk?)

bin.gif Sharkattack(portable).bin 4KB ---- Works.

bin.gif Squeezebox(portable).bin 4KB ----- Works. (Interesting game).

bin.gif Wordsattack(portable).bin 4KB ---- dpad Works.

Edited by doctorclu
  • Like 3

Share this post


Link to post
Share on other sites

I created a NTSC conversion for Acid Drop which displays 270 lines. That should work.

 

While the opening screen is positioned down a bit more (and in blue, green was the pal color), the game screen is all framed within the display.

Share this post


Link to post
Share on other sites

I've updated all these on the compatibility list.

 

https://docs.google.com/spreadsheets/d/1dN1l_iw3N4lJ69Wq2cqoLGKAxbo-gHLMohrhlSHwYNI/edit#gid=0

 

BTW Nukey, dpad aside, nice work on getting Beat Em and Eat Em to display.

 

A lot of the Mystique games had that problem if I remember my lightning round of game testing when I first got my AFP. So what did it take to correct that? I remember on those games they would have a title screen maybe, and usually the action screen would have a frame with a score and then a nothing but black in the main action part. Be curious to know what was going on there.

Edited by doctorclu

Share this post


Link to post
Share on other sites

The use of VBLANK. It would appear that the portable does not emulate it correctly...but it's not required to make a game visible using an emulator. Too bad about Beat'Em & Eat'Em...the checksum fail no longer registers it as using the paddles, so the Dpad defaults back to the joystick. It'll need a controller hack to make it playable.

  • Like 1

Share this post


Link to post
Share on other sites

Too bad about Beat'Em & Eat'Em...the checksum fail no longer registers it as using the paddles, so the Dpad defaults back to the joystick. It'll need a controller hack to make it playable.

 

I was impressed the game displayed at all. Kinda cool.

 

Paddles on the AFP are interesting. The emulation allows for this paddle emulation through the dpad. I would say, for example, Warlords is approaching decent emulation. On Breakout it is not as precise as you'd like. And Kaboom is not as precise either. But it does try to work with paddle routines to some degree.

 

As for Beat 'Em and Eat 'Em I honestly was not as familiar with this game, but figured it was a kaboom/paddle type game. But then again, when we initially tested the games for the compatibility list the Mystique and Playaround games were generally all kinds of broken. :P

Share this post


Link to post
Share on other sites

 

Why did Enduro need fixed? I have it on my portable and didn't notice any issues...

Share this post


Link to post
Share on other sites

According to the previous list entry, the screen was pushed down on the production model portable making the #cars passed unreadable.

Share this post


Link to post
Share on other sites

According to the previous list entry, the screen was pushed down on the production model portable making the #cars passed unreadable.

Hmm, I didn't have this issue with my ROM. Everything was visible.

Share this post


Link to post
Share on other sites

Guys...if you alter a ROM in any way, its profile checksum no longer matches. So it cannot be identified as using a special chip. The "Defender de-make" proves it.

Are you sure it uses a checksum? From cd-w's experiments it appears to use a detection routine as he was able to get Juno First to work by adding extra bankswitch instructions in unused space.

After testing a few more permutations, the problem appears to be the detection of F4 bankswitching in the FBP rather than the code itself. It seems the FBP needs a lot of evidence of F4 bankswitching before it will select this method. The attached code is identical to the previous one, but with the blank space filled with bankswitching ("sta $FFF4, etc.") instructions.

  • Like 1

Share this post


Link to post
Share on other sites

Are you sure it uses a checksum? From cd-w's experiments it appears to use a detection routine as he was able to get Juno First to work by adding extra bankswitch instructions in unused space.

Juno first doesn't use extra RAM - the chacksum may just be for games that need SARA ram?

 

Chris

Share this post


Link to post
Share on other sites

Guys...if you alter a ROM in any way, its profile checksum no longer matches. So it cannot be identified as using a special chip. The "Defender de-make" proves it.

 

More conversions I had disassemblies for...

 

To speed things along, I just altered the equate of VBLANK to be $2E instead of $01. That should correct migration issues. Custer's Revenge and Beat'Em & Eat'Em used VBLANK all over the place, no surprise those would not show up.

 

Jawbreaker and Marauder used $0288 for SWCHA, changed to be the normal $0280. That should fix the dpad.

 

I think it's using something different than a checksum, like grabbing a specific block or expecting the header to be a certain way because bB SARA games run fine and they all have different checksums but similar headers and code blocks in common that the emu could be grabbing as a way to identify the extra RAM.

Share this post


Link to post
Share on other sites

Change any single unused byte in a working original that requires a non-stick controller or non-standard bankswitching scheme or added ram. If it fails, it's using game profiles. Or maybe editing the 3rd-to-last byte of the ROM to be +/- $20 from the current value (the upper 3 bits of an 16-bit address are irrelevant to the 2600).

Share this post


Link to post
Share on other sites

Hmm, I didn't have this issue with my ROM. Everything was visible.

 

I would be curious to know what type of AFP you have, pre-production (with Space Invaders) or production (without Space Invaders). Or where you got the Euduro rom image you used.

 

Here is Euduro standard rom that we at least had in our testing bunch, for the production model that most would have bought:

 

post-4709-0-83321700-1483808086_thumb.jpg

 

Here is Nukey's version:

post-4709-0-45419200-1483808379_thumb.jpg

 

Here is pre-production model, original rom

post-4709-0-32486100-1483808423_thumb.jpg

 

Here is pre-production with Nukey's version:

post-4709-0-73004900-1483808459_thumb.jpg

 

As you can see the screen position is a bit higher for the pre-production than the production models. UNLESS, you have a non-Space Invader version, production model run that actually displayed games a bit higher than most that have tested Enduro. I've been curious if some production of the production models might have been different.

Edited by doctorclu
  • Like 3

Share this post


Link to post
Share on other sites

Change any single unused byte in a working original that requires a non-stick controller or non-standard bankswitching scheme or added ram. If it fails, it's using game profiles. Or maybe editing the 3rd-to-last byte of the ROM to be +/- $20 from the current value (the upper 3 bits of an 16-bit address are irrelevant to the 2600).

Got CBS RAM working - details here with a compatible version of Scrollout Follow the Ball! :)

  • Like 1

Share this post


Link to post
Share on other sites

It just blows my mind that we can speak of games like Beat 'em and Eat 'em as casually as if it were Castlevania III.

Share this post


Link to post
Share on other sites

It just blows my mind that we can speak of games like Beat 'em and Eat 'em as casually as if it were Castlevania III.

 

Yeh that and Custer's Revenge. Yep yep. For the sake of this thread just code being corrected to work for a slightly different emulator. Nothing more. :P

Edited by doctorclu

Share this post


Link to post
Share on other sites

So if the emulator is using detection for the banking scheme, something with very little change should at least start up correctly? With that in mind, here's a Defender 2 test. The 3 functions of the second stick have been moved to game select and the 2 difficulties, VBLANK equate changed to $2E, and SC ram written as $FF's (as per Mr SQL's test). Apart from an immediate hyperspace in Stella, those buttons do not function there (needs more work)...but does the game at least start in the portable?

Defender2(portable).bin

  • Like 1

Share this post


Link to post
Share on other sites

BTW the type is F8+SC in Stella, and you can set both difficulties in the profile to A to avoid the hyperspace problem + be able to use your smart bombs via game select (this ability is killed if you set a switch to B).

Share this post


Link to post
Share on other sites

So if the emulator is using detection for the banking scheme, something with very little change should at least start up correctly? With that in mind, here's a Defender 2 test. The 3 functions of the second stick have been moved to game select and the 2 difficulties, VBLANK equate changed to $2E, and SC ram written as $FF's (as per Mr SQL's test). Apart from an immediate hyperspace in Stella, those buttons do not function there (needs more work)...but does the game at least start in the portable?

 

It does start up on the portable. However the player two functions do not work on any of the portable (i.e. smart bombs).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...