Nukey Shay Posted February 16, 2017 Share Posted February 16, 2017 I don't know anything about CBS ram, and I absolutely HATE jigsaw puzzles. That file is a mess to try to read. 1 Quote Link to comment Share on other sites More sharing options...
doctorclu Posted February 17, 2017 Author Share Posted February 17, 2017 So is the CBS ram like looking in a shreader and trying to reassemble a document? Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 17, 2017 Share Posted February 17, 2017 I'm not a machine. I can read through assembly just fine, tho (as long as the diversions are minimal). That's actually why I prefer to make my own disassembles when creating hacks...less muck to trudge through. There's so much semicolon-riddled code here I don't know where to start. Quote Link to comment Share on other sites More sharing options...
doctorclu Posted February 17, 2017 Author Share Posted February 17, 2017 Makes sense. Sounds like me with most disassemblies. Well earlier you said that the Beat'em & Eat'em controller hack for Kaboom would not be practical since the game gets so fast and frantic at later levels. Honestly still wouldn't mind seeing that, Warlords, or Breakout with the Beat'em controls though. Got to be better than what is currently there. Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted February 17, 2017 Share Posted February 17, 2017 I'm not a machine. I can read through assembly just fine, tho (as long as the diversions are minimal). That's actually why I prefer to make my own disassembles when creating hacks...less muck to trudge through. There's so much semicolon-riddled code here I don't know where to start. Semicolons are for the comments - I use a lot of comments and descriptive naming, machine generated assemblies lack both of those attributes which imo makes them tougher to follow. Where to start if you're inclined - Gameloop2 is pretty small. I've got an RTS in there, but if I remove the small block of unused ballast code after the RTS it won't run on the portable; no specific CBS RAM access code or bank switching code in there either just ordinary 6502 code. Quote Link to comment Share on other sites More sharing options...
Everett1954 Posted February 17, 2017 Share Posted February 17, 2017 i thought Dkvcs worked on the AFP. I get a torn title screen and the game on 1/2 screen (upper). I grabbed it from this thread. Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 17, 2017 Share Posted February 17, 2017 Working, yes...perfectly, no. As mentioned, the early HMOVE is suspected for the skewed text. The score/lives area does show up at the top of the level when you reach it. The split screen is lost when you are on lower girders. Semicolons are for the comments - I use a lot of comments and descriptive naming, machine generated assemblies lack both of those attributes which imo makes them tougher to follow. Concise comments are no problem. Too many comments and it becomes unreadable gibberish to me (worse than uncommented code). I'd have to erase 99% of the text just to figure out what your program is supposed to be doing...a great deal of the comment lines are inactive program code lines. For example...which RTS after Gameloop2 are you referring to? The one ON the label? The RTS a few lines lower? Or the RTS a few lines lower from that? I'll look into it after I do some heavy editing 2 Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 17, 2017 Share Posted February 17, 2017 BTW the *unedited in any way* program you posted does NOT work on the portable. In Stella, some colored lines appear in the upper left. On the portable, no screen (but a lotta horrible screeching noises). What it this thing SUPPOSED to be doing? Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted February 18, 2017 Share Posted February 18, 2017 Working, yes...perfectly, no. As mentioned, the early HMOVE is suspected for the skewed text. The score/lives area does show up at the top of the level when you reach it. The split screen is lost when you are on lower girders. Concise comments are no problem. Too many comments and it becomes unreadable gibberish to me (worse than uncommented code). I'd have to erase 99% of the text just to figure out what your program is supposed to be doing...a great deal of the comment lines are inactive program code lines. For example...which RTS after Gameloop2 are you referring to? The one ON the label? The RTS a few lines lower? Or the RTS a few lines lower from that? I'll look into it after I do some heavy editing Thanks Nukey! BTW the *unedited in any way* program you posted does NOT work on the portable. In Stella, some colored lines appear in the upper left. On the portable, no screen (but a lotta horrible screeching noises). What it this thing SUPPOSED to be doing? I edited the file so much I must have uploaded a non-working version, this one definitely works, just compiled and tested it on the portable. Not doing much, just displaying 5 colored blocks and playing a tune. cbstest2a.asm The RTS I am referring to is the first one after the gameloop2 label - it prevents the ballast block of code that follows from being executed so that code shouldn't be needed, but removing it causes the horrible screeching noise you observed - it would be really interesting if this build also fails on your portable because we'd have two variations of the portable emu, which is a possiblity. Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 18, 2017 Share Posted February 18, 2017 There ARE two versions of the AFP, preproduction and the current model. The former includes Space Invaders, and seems to have a bit better emulation (it can deal with VBLANK on problem games, for example). What is the "ballast code"? Everything between Gameloop2 and doneGameLoop2 (apart from the RTS)? 1 Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 18, 2017 Share Posted February 18, 2017 Just tried it...with all of those lines removed, it doesn't work (as you said). But if you set ORG to $D7A2 above doneGameloop2 (which is where it would be if all that mess was present), it works. So the problem is something that follows this area. Something which cannot be shifted down a page and a half in memory. You wanna try throwing in 411 bytes of filler above every tag (one at a time) to zero in on the problem? I'm going blind looking at it. 1 Quote Link to comment Share on other sites More sharing options...
doctorclu Posted February 18, 2017 Author Share Posted February 18, 2017 LOL! Hey Nukey, if you are tired of looking at chaotic dissembled code, I found the work of Spire Ware for Warlords. Would it be possible to add the Beat'em & Eat'em paddle fix to this assembly code? Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 18, 2017 Share Posted February 18, 2017 Warlords is already playable via "special handling". Left & right to move the yellow shield, up and down for the green shield. The trigger is available to yellow. Any hacking at all to the original alters the checksum and makes it unplayable to the portable...so then the control scheme would need fixing. 1 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted February 23, 2017 Share Posted February 23, 2017 There ARE two versions of the AFP, preproduction and the current model. The former includes Space Invaders, and seems to have a bit better emulation (it can deal with VBLANK on problem games, for example). What is the "ballast code"? Everything between Gameloop2 and doneGameLoop2 (apart from the RTS)? Just tried it...with all of those lines removed, it doesn't work (as you said). But if you set ORG to $D7A2 above doneGameloop2 (which is where it would be if all that mess was present), it works. So the problem is something that follows this area. Something which cannot be shifted down a page and a half in memory. You wanna try throwing in 411 bytes of filler above every tag (one at a time) to zero in on the problem? I'm going blind looking at it. Thanks for your help Nukey! I've done some more experimenting and have been able to get full games (larger code to work), while less code such as simple examples will cause the issue to surface: for a 12K CBS ROM image to work, the first bank had better be nearly full or offset so that it is pushed further down; your ORG solution does this so I may have the compiler calculate an ORG and throw it in if it detects the program is too small. Btw, here's what the short program looked like behind all that commented mess of Assembly: 10 vwpixel(0,2,flip) 20 for x=1 to 4:vwpixel(3,x,on):next x 30 vwpixel(1,4,poll) I've also found some other idiosyncrasies between the portable and Stella compiling this game to run on the portable under CBS RAM - this time the portable gets it right and Stella displays a mosaic when I rely on pre-initialized memory. In contrast, Stella get's the pre-initialization right with Pixels and the portable doesn't but it's not a fatal error; the first game in Stella or via the Harmony will start out with only the slow breakout block and pacman chasing you and it takes awhile for the fast block to come into play. On the portable however, the fast block starts in right away along with the slow block but it doesn't break playability (just harder). I had already been trying to find precisely where that preinitialized memory is being referenced for awhile because subsequent games on both Stella and Harmony always start with both blocks too (only the very first game works as intended) however the Assembly listing for Pixels is over two inchs thick when printed - I feel the same as you trying to navigate that listing like trying to find a needle; I can post it if you want to take a look!! When I get a little further with the StarBlitz portable beta I'll post that on the regular Atari forum for players to test and help find any more anomalies for fine tuning the vwBASIC compiler, also will ask players to test on both versions of the portable you mentioned though I am glad I have the release version - I do want to support the pre-production unit too but it seems less important if millions of portables are eventually sold but only a thousand are pre-production units. Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 25, 2017 Share Posted February 25, 2017 (edited) Adventures Of Tron: this was listed perfect even though the title screen was glitched. I also corrected all HMOVEs (originally hitting at cycles 2, 75, and 74 when WSYNC is absent), and fixed the number of scanlines to a steady 262...so it will run on anything. Colors edited slightly for better contrast. Use difficulties to start at 4 skill levels...both B = 0, Left A = 2, Right A = 4, Both A = 8. Adventuresoftron.bin Edited February 25, 2017 by Nukey Shay 3 Quote Link to comment Share on other sites More sharing options...
Arenafoot Posted February 25, 2017 Share Posted February 25, 2017 Adventures Of Tron: this was listed perfect even though the title screen was glitched. I also corrected all HMOVEs (originally hitting at cycles 2, 75, and 74 when WSYNC is absent), and fixed the number of scanlines to a steady 262...so it will run on anything. Colors edited slightly for better contrast. Use difficulties to start at 4 skill levels...both B = 0, Left A = 2, Right A = 4, Both A = 8. Nukey's back! I was thinking you were taking a break from hacking ROMs for the AFP, since the last one you did 11 days ago. I updated the Compatibility List to reflect "modified to work" for this title. Keep up the great work! Happy Mardi Gras!!! Quote Link to comment Share on other sites More sharing options...
Feralstorm Posted February 26, 2017 Share Posted February 26, 2017 The portable uses the regular version without copyright, I've been told. So whatever trick it is using to merge the two frames (removing the flicker) would be applicable to the regular version only. It's apparent my old 'Arcade Asteroids' hack ( http://atariage.com/forums/topic/77019-asteroids-arcade-hack/) isn't covered under this condition. (it was hacked from T.J.'s 'Sadistroids' and has the copyright/title screen) I'd love to hack up a version with alternate thrust/hyperspace controls (fat thumbs). I'd give up the title page for a de-flickered version too. My talents are basic bit-hacking though, sadly. Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted February 26, 2017 Share Posted February 26, 2017 The flicker-free condition will only work with the original unhacked game (no copyright screen). Any hacking done at all and the game flickers like on a regular console. Surround: Not much I can do about the 2player variations, so I made them single-player. The blue marker will follow your direction in reverse, and the goal is to fill the screens to time out the game at 18 minutes before either marker hits 10 points. All variations are also given to the computer player, tho it does not quite know what to do with them I also included the option to turn off vertical separation lines, for a total of 66 game variations. The game #'s that match the original cartridge are shown off to the right when you use select. Game number... ...Lines| Speed | Diag | Wrap | Erase | Comp 01 | | | | | 02 | X | | | | 03 | | X | | | 04 | X | X | | | 05 | | | X | | 06 | X | | X | | 07 | | X | X | | 08 | X | X | X | | 09 | | | | X | 10 | X | | | X | 11 | | X | | X | 12 | X | X | | X | 13 | | | X | X | 14 | X | | X | X | 15 | | X | X | X | 16 | X | X | X | X | 17 | | | | | X 18 | X | | | | X 19 | | X | | | X 20 | X | X | | | X 21 | | | X | | X 22 | X | | X | | X 23 | | X | X | | X 24 | X | X | X | | X 25 | | | | X | X 26 | X | | | X | X 27 | | X | | X | X 28 | X | X | | X | X 29 | | | X | X | X 30 | X | | X | X | X 31 | | X | X | X | X 32 | X | X | X | X | X 33 X | | | | | 34 X | X | | | | 35 X | | X | | | 36 X | X | X | | | 37 X | | | X | | 38 X | X | | X | | 39 X | | X | X | | 40 X | X | X | X | | 41 X | | | | X | 42 X | X | | | X | 43 X | | X | | X | 44 X | X | X | | X | 45 X | | | X | X | 46 X | X | | X | X | 47 X | | X | X | X | 48 X | X | X | X | X | 49 X | | | | | X 50 X | X | | | | X 51 X | | X | | | X 52 X | X | X | | | X 53 X | | | X | | X 54 X | X | | X | | X 55 X | | X | X | | X 56 X | X | X | X | | X 57 X | | | | X | X 58 X | X | | | X | X 59 X | | X | | X | X 60 X | X | X | | X | X 61 X | | | X | X | X 62 X | X | | X | X | X 63 X | | X | X | X | X 64 X | X | X | X | X | X 65 - Graffiti w/lines 66 - Graffiti w/o lines Surround(portable).bin 3 Quote Link to comment Share on other sites More sharing options...
doctorclu Posted March 14, 2017 Author Share Posted March 14, 2017 That's a lot of game selects. Quote Link to comment Share on other sites More sharing options...
ComputerSpaceFan Posted March 15, 2017 Share Posted March 15, 2017 Me to the genius hacking skills of Nukey Shay 1 Quote Link to comment Share on other sites More sharing options...
Arenafoot Posted March 16, 2017 Share Posted March 16, 2017 Me to the genius hacking skills of Nukey Shay Agree! But, it has been awhile since we've seen another hack from the greatest hacker around! Quote Link to comment Share on other sites More sharing options...
Nukey Shay Posted March 26, 2017 Share Posted March 26, 2017 ... Elevatoraction(portable).bin 4 Quote Link to comment Share on other sites More sharing options...
Arenafoot Posted March 26, 2017 Share Posted March 26, 2017 ... Awesome work again Nukey! Quote Link to comment Share on other sites More sharing options...
doctorclu Posted March 27, 2017 Author Share Posted March 27, 2017 Very nice! I've added Elevator Action (and a few other ones.. ooops!) before that to the links on the first page of this thread. Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted April 2, 2017 Share Posted April 2, 2017 (edited) BTW flickerless asteroids happen even if the game is loaded as a .bin from the SD. The included paddle games also share this trait. Let's call this "Special handling". Rules so far: Special handling to specific roms - yep Non-persistent color switch (7800-similar) Frequent port read (SWCHA/SWCHB) - avoid VBLANK - remove for production version Mirrored RIOT addresses - not supported On cart ram - use $FF to fill Illegal opcode use - not supported Early HMOVE - not supported +1 cycle by branch over page - Nope Any others? Any ideas about this one Nukey? KC_AFP_BETA.bin The portable seems to act like it has a Sega pad. One of the ghosts malfunctions if a Sega pad is plugged into the full size console, but it works fine with a Joystick, same thing happens with the SuperCharger version. And the same ghost malfunctions on the AFP - perhaps there is no paddle RAM byte? EDIT: Found it! Memory location 24 changes state on a full size console if a sega pad is plugged in, or after a few hours with temperature changes - paddle cap must affect it. I had intended to use #24 as an offset Edited April 3, 2017 by Mr SQL Quote Link to comment 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.