doctorclu Posted November 19, 2016 Share Posted November 19, 2016 Games Hacked to work on the Atari Flashback Portable. Star Raiders 2600 - (By Nukey Shay) Tapper - (By Nukey Shay) BudTapper - (By Nukey Shay) Acid Drop - (By Thomas Jentzsch) Custer (portable) - (By Nukey Shay)Enduro (portable) - (By Nukey Shay)Jawbreaker (portable) - (By Nukey Shay)Lochjaw (portable) - (By Nukey Shay)Marauder (portable) - (By Nukey Shay)Sharkattack (portable) - (By Nukey Shay)Squeezebox (portable) - (By Nukey Shay)Wordsattack (portable) - (By Nukey Shay) Man-4K pac 1_3 - (By Debro) Defender 2 - (By Nukey Shay) Fix It Felix - (By Cybearg) Raiders of the Lost Ark - (By Nukey Shay) Circus (Circus Atari w/ a Joystick) - (By Zellers (Company) Bloody Human Freeway - (By Nukey Shay) Freeway - (By Nukey Shay) (first two player game on the AFP!) Nackgammon (portable) - (By Nukey Shay) Defender arcade (portable) - (By Nukey Shay) Asteroids (alternate control) - (By Nukey Shay) Spyhunter (portable) - (By Nukey Shay) Star Trek (portable) - (By Nukey Shay) Beamrider (portable) - (By Nukey Shay) Beat'em and eat'em (portable) - (By Nukey Shay) Spy Hunter (Black) - (By Nukey Shay with color mod by KevinMos3) Spy Hunter (Gray) - (By Nukey Shay with color mod by KevinMos3) Berzerk - (opening screen modified for Flashback by KevinMos3 w/Nukey Shay fix) Berzerk (fixed for Portable) - (By Nukey Shay) Berzerk 2player (portable) - (By Nukey Shay) Bumperbash (portable) - (By Nukey Shay) Towering Inferno (portable) - (By Nukey Shay) Wizard of Wor (controller order change) - (By Nukey Shay) Gauntlet (other buttons hack) - (By Nukey Shay) DarkChambers (Other buttons hack) - (By KevinMos3) Wizard of Wor 16K [includes CBS version by pushing up on dpad at startup] - (By Nukey Shay) Yahtzee (portable) - (By Nukey Shay) DK VCS (portable) - (By Nukey Shay) WestWorld (portable) - (w/ Berzerk fix by Nukey Shay and graphical hack by KevinMos3) WestWorld Turbo - (w/ Berzerk fix by Nukey Shay and graphical hack by KevinMos3) Berzerk Turbo (portable) - (w/ Berzerk fix by Nukey Shay and graphical hack by KevinMos3) Yahtzee with big dice - (By Nukey Shay) Shieldshifter (portable) - (By Nukey Shay) Stripoff (portable) - (By Nukey Shay) Adventures of Tron - (By Nukey Shay) Surround (portable) - (By Nukey Shay) Elevator action (portable) - (By Nukey Shay) Aardvark (portable) - (By Nanochess) Tacscan(portable)- (By Nukey Shay) (mostly works) Cxb8 Millipede (no grey)- (By Cats) PressureCooker(AFPv1)- (By Nukey Shay) PressureCooker(AFPv2)- (By Nukey Shay) PressureCooker(AFPv3)- (By Nukey Shay) RallyX- (By Nukey Shay) Commandoraid- (By Nukey Shay) Commandoraid-Paddle- (By Nukey Shay) Commandoraid-Joystick- (By Nukey Shay) Arcade Pong- (By Nukey Shay) Threshold- (By Nukey Shay) Space Game - AFP Version (By Karl G) Cosmic Ark (portable) (By Karl G) Radar Lock- (By Nukey Shay) Pac-Man- (By Nukey Shay) Games already made useful on the FBP through controller hacks (and my inspiration for this thread) * Big Bird's Egg Catch - from kid's controller to joystick. - (By OmegaMatrix) * Holey Moley - from kid's controller to joystick. - (By OmegaMatrix) * Cookie Monster Munch - from kid's controller to joystick. (By OmegaMatrix) * Omega Race joystick hack - (By Thomas Jentzsch) (THE ORIGINAL PITCH THAT STARTED THIS MESSAGE THREAD) ------------------------------------------------------------------------------------------------- Even though the Flashback Portable (with the SD card support) is not out in stores till early next month, some of us have ordered one online and are seeing which games work on the little handheld. As a list of hundreds of games are being tested and the results listed, some games break due to special hardware tricks, but most of the non-working games are from the D-pad design and emulation problems. But this thread is not about that...yet. This thread is making some adjustments to games to help them work better with an Atari system with only one dpad controller and no other controller options. For those up for a challenge or just showing off, here are some games that could use a slight adjustment to make an awesome game on the Flashback Portable (FBP) 1) Wizard of Wor: reassigning controller 2 to controller 1. It was wild how they made that game making the first player use the second joystick. At the moment you have to select a two player game to get this to work so that player two gets the FBP's only controller. Re-assigning player one to joystick 1 instead of the second joystick will just make this experience better. 2) Star Raiders : Brought this one up, was sad that there was not a keyboard controller. Then I played Star Master and was inspired on how they brought up a galactic map with the select switch. On the FBP they give you six buttons. So you have fire of course, then L and R difficulty (two buttons that I know can use used during gameplay), the TV option switch (not sure if anyone has ever used this switch during gameplay) and the select switch (which we know Star Master used.) If someone is up for a challenge, or walking me through a challenge but I'll admit it would be a bit of walking what if we used difficulty L (on) for shield on Difficulty L (off) for shield off [since this was a two position switch. R Difficult on for Fore View, R Difficulty off for Galactic Map, and then select of the TV select switch for hyperspace? (The sixth button is the pause button which would probably not help us in this case being more hardware/emulator effect than a in game effect.) 4 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/ Share on other sites More sharing options...
atwwong Posted November 19, 2016 Share Posted November 19, 2016 (edited) I don't have my portable yet, so I can't test this awesome Wizard of War hack that is 16k and allows you to select the left joystick for player one: http://atariage.com/forums/topic/209266-wizard-of-wor-2-the-arena/page-10?do=findComment&comment=3181547 I believe there is a 4k hack elsewhere; I just haven't search for it yet. (Still can't find it... Just the supercharger conversion by Nukey that starts with 2 player mode.) Edited November 19, 2016 by atwwong 1 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3634573 Share on other sites More sharing options...
doctorclu Posted November 19, 2016 Author Share Posted November 19, 2016 That version of Wizard of Wor works pretty good on the FBP and I added that to the list of alternatives for it. Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3634663 Share on other sites More sharing options...
+SpiceWare Posted November 20, 2016 Share Posted November 20, 2016 1) Wizard of Wor: ... It was wild how they made that game making the first player use the second joystick.That makes it arcade accurate Player one has yellow Worriors, on the right, and player two has blue Worriors, on the left. 1 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3634691 Share on other sites More sharing options...
doctorclu Posted November 20, 2016 Author Share Posted November 20, 2016 That makes it arcade accurate I've played this game in the arcade, and I've played this game on the 2600 and 800 computer. Having the 1st player on joystick 2 just makes it a pain in the butt. More so if you're on a game system like the FBP that only has joystick 1. Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3634713 Share on other sites More sharing options...
+SpiceWare Posted November 20, 2016 Share Posted November 20, 2016 Having the 1st player on joystick 2 just makes it a pain in the butt. Don't disagree, I just don't consider it "wild" that they would strive to make the game more arcade accurate after the backlash to Pac Man that occurred the year before. 1 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3634977 Share on other sites More sharing options...
doctorclu Posted November 23, 2016 Author Share Posted November 23, 2016 (edited) If someone is up for a challenge, or walking me through a challenge but I'll admit it would be a bit of walking what if we used difficulty L (on) for shield on Difficulty L (off) for shield off [since this was a two position switch. R Difficult on for Fore View, R Difficulty off for Galactic Map, and then select of the TV select switch for hyperspace? (The sixth button is the pause button which would probably not help us in this case being more hardware/emulator effect than a in game effect.) Looks like I have some decompiling, recoding, and re-compiling to do to get Star Raiders working on the Atari Flashback Portable. (AFP) I found the tools for decompiling. I need some examples of the code for using the following buttons to effect gameplay, can someone point me to some good links? * The difficulty switches. * The color select switch * The select switch. Edited November 23, 2016 by doctorclu Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3637155 Share on other sites More sharing options...
doctorclu Posted November 23, 2016 Author Share Posted November 23, 2016 Looks like we have an example of the black and white/color switch code here: http://atariage.com/forums/topic/160610-making-use-of-the-status-register/?do=findComment&comment=1982434 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3637474 Share on other sites More sharing options...
+SpiceWare Posted November 24, 2016 Share Posted November 24, 2016 I need some examples of the code for using the following buttons to effect gameplay, can someone point me to some good links? * The difficulty switches. * The color select switch * The select switch. TV Type, Select and Reset are shown in my Collect series, which is probably amongst the most thoroughly commented 2600 code you'll ever find. I suggest going through the entire series, starting with Let's Make a Game!, but if you don't wish to then check at least these: Step 1 - Generate a Stable Display, contains the Stella Programmer's Guide, a must have for doing 2600 work Step 3 - Score & Timer display, covers TV Type switch step 8 - Select and Reset support, covers Select and Reset switches All of those switches are read via the same register, SWCHB. While the programming documentation shows difficulty switch positions as amateur (B) and pro (A), I refer to them as beginner (B) and advanced (A). I didn't use the difficulty switches in Collect, but you'll find that they're typically checked using the BIT instruction because it moves bit 6 into V (overflow flag) and bit 7 into N/S which makes it very easy to check them. N/S = negative/sign - some documentation uses N for negative, other documentation uses S for sign. They both mean exactly the same thing, it's just something to be aware of - Stella uses N: CheckLeftDifficulty: bit SWCHB bvs LeftDifficultyA LeftDifficultyB: ; do left difficulty B here jmp DoneLeftDifficulty LeftDifficultyA: ; do left difficulty A here DoneLeftDifficulty: CheckRightDifficulty: bit SWCHB bmi RightDifficultyA RightDifficultyB: ; do right difficulty B here jmp DoneRightDifficulty RightDifficultyA: ; do right difficulty A here DoneRightDifficulty: The branch can also be done the other way: CheckLeftDifficulty: bit SWCHB bvc LeftDifficultyB LeftDifficultyA: ; do left difficulty A here jmp DoneLeftDifficulty LeftDifficultyB: ; do left difficulty B here DoneLeftDifficulty: CheckRightDifficulty: bit SWCHB bpl RightDifficultyB RightDifficultyA: ; do right difficulty A here jmp DoneRightDifficulty RightDifficultyB: ; do right difficulty B here DoneRightDifficulty: When reviewing the Stella Programmer's Guide you may notice the TIA read registers are also wired up to use bits 6 and 7, which was done so they could easily be tested via the BIT instruction. Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3637785 Share on other sites More sharing options...
doctorclu Posted November 24, 2016 Author Share Posted November 24, 2016 Oh this is awesome info! Now to plug this in after Thanksgiving. So do we have examples of the keyboard controller code? Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3637837 Share on other sites More sharing options...
+SpiceWare Posted November 24, 2016 Share Posted November 24, 2016 So do we have examples of the keyboard controller code? http://www.spiceware.org/dds/index.html Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3637913 Share on other sites More sharing options...
Asaki Posted November 25, 2016 Share Posted November 25, 2016 (edited) I'm going to have to keep an eye on this thread, good luck guys. BTW, Outlaw does have game modes that are 1-player, although they aren't very exciting =) Edited November 25, 2016 by Asaki 1 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3638120 Share on other sites More sharing options...
doctorclu Posted December 8, 2016 Author Share Posted December 8, 2016 Just wanted to say thanks for the advice. Currently I'm trying to figure out Distella to disassemble the roms. Figure it would be fairly cut and dry, and it probably is, but I've got it figure out which subcommands I need to get the rom to disassemeble. Would appreciate any pointers to the following... Here is what I get so far when trying to disassmble the Star Raiders rom: Use: DiStella [options] file options: -7 Use Atari 7800 MARIA equates and file sizes -a Turns 'A' off in accumulator instructions -c Defines optional config file to use. (e.g. -cpacman.cfg) (see distella.txt for additional information) -d Disables automatic code determination -f Forces correct address length -i Process DMA interrupt Vector (7800 mode) If 2600 mode, enables -b option -b Process BRK interrupt Vector (2600 and 7800 mode) -k Enable POKEY equates (7800 mode only, auto-detected if a78 file) -o# ORG variation: # = 1- ORG $XXXX 2- *=$XXXX 3- .OR $XXXX -p Insert psuedo-mnemonic 'processor 6502' -r Relocate calls out of address range -s Cycle count Example: DiStella -pafs pacman.bin > pacman.s Example: DiStella -paf7ikscball.cfg ballblaz.bin > ballblaz.asm Email: rcolbert@novia.net or dboris@comcast.net Version 3.0 updates, email jkharvey@voyager.net Version 3.01+ updates, email stephena@users.sf.net>distella -pafs Raiders.binError: .bin file must be 2048 or 4096 bytes for 2600 games; For 7800 games, .bin file must be 16384, 32768 or 49152 bytes (+128 bytes if header appended) Also, the -7 option must be set or unset appropriately Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3646292 Share on other sites More sharing options...
Asaki Posted December 8, 2016 Share Posted December 8, 2016 (edited) Can you just pad the ROM? Edit: Nevermind, I see Star Raiders is 8192 bytes. I guess the program won't do files that large? Edited December 8, 2016 by Asaki Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3646315 Share on other sites More sharing options...
+SpiceWare Posted December 8, 2016 Share Posted December 8, 2016 You have to split the Star Raiders ROM into the separate 4K banks, then run each bank thru Distella. However, the jumps between banks means distella can't follow the program flow, so it won't be able to easily differentiate between code and data. Nukey Shay goes into detail on how he handles that in this topic: http://atariage.com/forums/topic/101792-how-do-i-disassemble-8kb-atari-2600-games Stella has a built in version of Distella, use the savedis command at the prompt, but likewise it only supports 4K or smaller ROMs. Stella's version is really good for the ROMs it supports though. Best practice is to run the game for a while, making sure to see/do everything you can, and only then use savedis. The process of running the game allows Stella to determine which parts of the program are code and which parts are data. Additionally, it will know which parts of the data are used as graphic data for the players or playfield and will output them in a different format than regular data. In this screenshot: top-left = legend bottom-left = the * denotes code that hasn't been executed by Stella top-right = the (D) denotes data that hasn't been used1 for player or playfield middle-right = the (G) denotes data used as graphics for a player (the castle gate) bottom-right = the (P) denotes data used as graphics for the playfield 1 it's still possible this data is for players or playfield, just that it hasn't yet been used for that purpose. Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3646445 Share on other sites More sharing options...
toiletunes Posted December 8, 2016 Share Posted December 8, 2016 Star Ship and Towering Inferno use the other joystick Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3646453 Share on other sites More sharing options...
doctorclu Posted December 8, 2016 Author Share Posted December 8, 2016 Speaking of Nukey Shay I found this from six years ago about Star Raiders disassembly... http://www.gamefaqs.com/boards/585145-star-raiders/52705745 "Star Raiders;First 4k segment---ORG D000DATA D000 D12ACODE D12B D3BFDATA D3C0 D60CCODE D60D D639DATA D63A DFF1CODE DFF2 DFF7DATA DFF8 DFFF;Second 4k segment---ORG F000DATA F000 F09DCODE F09C FD98DATA FD99 FFE9CODE FFEA FFF7DATA FFF8 FFFFNote: the program uses interlaced graphics for moving objects. Every other scanline's data is grabbed 134 bytes away from the rest of the shape's data. Also, much of the first segment's romspace...$D63A-$DFF1...is completely unused. Had Atari taken a bit more time optimizing the code, they may have been able to use 4k chips for production. Surprising how many games wasted money like this (including Asteroids, their first ever bankswitched game)." Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3646725 Share on other sites More sharing options...
doctorclu Posted December 9, 2016 Author Share Posted December 9, 2016 I have to be honest, the decompiled rom I don't see how anyone can make heads or tails of that. It's not source code but more data output. Any pointers? Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3646748 Share on other sites More sharing options...
+SpiceWare Posted December 9, 2016 Share Posted December 9, 2016 If he posted that it's likely he also posted the source at some point <searching> reply #3 and now I know Nukey's real name Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3647121 Share on other sites More sharing options...
Dave Neuman Posted December 10, 2016 Share Posted December 10, 2016 If he posted that it's likely he also posted the source at some point <searching> reply #3 and now I know Nukey's real name Howe do you know that? Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3648008 Share on other sites More sharing options...
+SpiceWare Posted December 11, 2016 Share Posted December 11, 2016 <obi-wan>Use the Source Dave</obi-wan> Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3648364 Share on other sites More sharing options...
Nukey Shay Posted December 17, 2016 Share Posted December 17, 2016 Regarding Star Raiders difficulty switch reassignments: How would you then handle auto/manual modes for the attack computer and shields? Via added game selections? BTW these are the program areas you'd need to change for button reassignments. LF1DB: bit SWCHB ;4 bpl LF1F2 ;2 skip ahead if auto shields lda $EE ;3 and #$1F ;2 bne LF1F2 ;2 lda $DB ;3 bit INPT3 ;3 bmi LF1F2 ;2 branch if shields button not pressed eor #$80 ;2 sta $DB ;3 bne LF207 ;2 LF1F2: bit SWCHB ;4 bvc LF207 ;2 skip ahead if auto computer lda $EE ;3 and #$1F ;2 bne LF207 ;2 lda $DB ;3 bit INPT2 ;3 bmi LF207 ;2 branch if computer button not pressed eor #$40 ;2 sta $DB ;3 LF207: LF29B: jsr LFD90 ;6 bit INPT5 ;3 bmi LF2A5 ;2 branch if hyperwarp button not pressed jsr LFB04 ;6 LF2A5: bit $FB ;3 bmi LF2F2 ;2 jsr LFD90 ;6 bit INPT2 ;3 bmi LF2B6 ;2 branch if fore view not pressed lda $FB ;3 and #$FB ;2 sta $FB ;3 LF2B6: sta WSYNC ;3 bit INPT3 ;3 bmi LF2C2 ;2 branch if map button not pressed lda $FB ;3 ora #$04 ;2 sta $FB ;3 LF2C2: 1 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3652260 Share on other sites More sharing options...
Nukey Shay Posted December 18, 2016 Share Posted December 18, 2016 WIP...needs some fixing (as well as 7800 support, and auto modes via game select). Spared a byte of ram by eliminating the indirect jump ($FC). I did get hyperwarp to be set to the stick button when the map is shown, tho StarRaiders(NoKeypad).zip 3 Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3652552 Share on other sites More sharing options...
doctorclu Posted December 31, 2016 Author Share Posted December 31, 2016 WIP...needs some fixing (as well as 7800 support, and auto modes via game select). Spared a byte of ram by eliminating the indirect jump ($FC). I did get hyperwarp to be set to the stick button when the map is shown, tho YESSSS!!!! I still would like to learn how you did this on the 8K game. Most of the decompilers I looked into were 4K. Trying out the rom now. Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3661173 Share on other sites More sharing options...
Nukey Shay Posted December 31, 2016 Share Posted December 31, 2016 They work with 4k because that is the most ROM memory that the console is able to work with (due to the 13-bit address line of the 6507). So you need to split larger games into separate chunks and do them individually. The size of each chunk depends on which banking scheme the ROM employed (2 parts of 4k each in this case). The act of switching from one bank to another means that the auto code detection of Distella will fail in areas that use it, so configuration files must be created as you discover the code and data sections to aid in disassembly (playing a game for a while in Stella and then checking the debugger can help here...it'll figure out those sections on its own as the program runs). Quote Link to comment https://forums.atariage.com/topic/259166-flashback-portable-needed-controller-hacks/#findComment-3661197 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.