Jump to content

Nukey Shay

  • Content Count

  • Joined

  • Last visited

  • Days Won


Nukey Shay last won the day on July 8 2011

Nukey Shay had the most liked content!

Community Reputation

1,733 Excellent


About Nukey Shay

  • Rank
    Sheik Yerbouti
  • Birthday 03/27/1965

Contact / Social Media

Profile Information

  • Gender
  • Location
    The land of Gorch
  • Interests
    Classic gaming

Recent Profile Visitors

57,528 profile views
  1. Nope...nothing going on here. (whistles and goes to the corner)
  2. ^ In practice, you generally would not be setting or clearing the bits that the current routine is not interested in...just change the specific bit(s) you need.
  3. Mentioned earlier in the thread, the portable is not detecting that this game uses extended Ram for some reason (even after filling it with $FF's). This is one of the easier issues to spot when looking for portable glitches...just hack the game to use a byte of extended Ram as something noticeable like the background color and keep increasing it. If the screen color is not shifting, the bankswitch mode was not detected.
  4. Think of the basic set of game variations in Space Invaders...moving shields, zigzagging bombs, fast bombs, or invisible invaders. That is 4 variables. But the game does not store these variables other than the game selection value itself. This variable begins with a value of zero (Game #1...Single Player, no options). If game select is pressed, the value is increased to 1 (Game #2...Single Player, Moving Shields). Press it again and it goes to 2 (Game #3...Single Player, Zigzagging Bombs). And so on. But if you look at those values in binary, you can see a pattern emerge: Game 1 %00000000 One Player, No Options Game 2 %00000001 One Player, Moving Sheilds Game 3 %00000010 One Player, Zigzagging Bombs Game 4 %00000011 One Player, Moving Shields & Zigzagging Bombs Game 5 %00000100 One Player, Fast Bombs ...etc So to check if the game features moving shields, the program just needs to see if the rightmost bit of the game variation variable is 1. For zigzagging bombs, check the next bit higher. For fast bombs, the 3rd from the right. And invisible invaders are selected if the 4th from the right is 1. Games 1 to 16 are all combinations of those 4 variables...and the remainder of the game variations are all 2-player modes, in groups of 16 which contain this set of the game variations found in the first 16.
  5. Then the easiest way is to use 2 variables, one for the sound effect type and the other for duration. Check duration first. If it is zero, go to the end (no sound). Otherwise, subtract 1 and use an on-goto statement with the variable holding the sound effect type to jump to the noise to be played.
  6. Not at all. You can use separate variables for the sound effect type and duration. That's 256 different sounds for a duration of 255 frames (or bars). If the game does not need a fraction of that mess, you can split the sound effect type and duration within a single variable...such as 16 sounds each having a duration of 15. Specific coding for each sound effect can determine when the duration portion of the variable is decremented. Bitwise operators are your friends.
  7. 6 column balloons: Round 1 has 4 columns as in the arcade game, every other round has 6. No other changes yet (needs a little better randomizing). 2-player games may have been sacrificed, tho (unless I switch to trackball control...which I don't really want to do since just about everyone has a set of paddles). Kickman(paddle_hack_v5).bin
  8. Pal60 was always an option in the assembly file. I'd thought that I posted it some time ago, but here it is if not. WoW16k.asm WoW16k(pal60).bin
  9. Never started it...I was looking into the last question of increasing the number of columns. The solution that I came up with is to reuse the sprite pointer as the color value, which solves the issue of sprite copies reusing the same color on each row...saving Ram memory in the process. Now there is still the issue of spacing, which I believe could be fixed by placing 2 of the columns on the frames which display the falling balloon...so a new minikernel must be written to do that. Having a unique color for each object simplified the scoring (use the low nybble of the sprite pointer/color value to read from a table of point values), so this is partially done below. Balloon stack x 3 multiplier is done, but the Pac-Man x 5 multiplier needs to be addressed...as well as adding a kicking bonus for the first round and the ability to stack multiple Pac-Men as in the arcade game (for a hefty bonus when all 4 are saved). Missed balloons return to the columns in the arcade game, so I threw that in. Kickman(paddle_hack_v4).bin
  10. Because it's not cost-effective to cannibalize antiques 🙄 Modern consoles get -all- their profit from SW, subs, and DLC. None of that is applicable to FB systems.
  11. Nukey Shay

    PAL60 ROMS

    The logo is missing in the HES rom, but these are the color values used. Some are not 1:1 comparable to the NTSC hues. Comparing files Dolphin(NTSC).bin and Dolphin(PAL).bin F04D: 88 B8 F051: 1E 2E F18A: 96 B6 F190: 92 B2 F1B8: 80 B0 F1DA: 80 B0 F1EE: 96 B6 F1F4: 92 B2 F2E4: 38 28 F7A2: 80 B0 F7A5: C6 E6 FBB0: 82 92 FBB1: 18 28 FBB2: 28 48 FBB3: 28 48 FBB4: 38 68 FBB5: 38 68 FBB6: 48 88 FBB7: 48 88 FBB8: 58 A8 FBB9: 58 A8 FBBA: 68 C8 FBBB: 68 C8 FBBC: 78 B8 FBCC: C4 54 FBCD: CC 5C FD6D: 1E 2E FECA: 18 28 FECB: 88 BA FECC: C8 78 FECF: 86 B6 FED0: 4C 6C FED2: EC 2C FEDA: 12 22 FEDB: 44 64 FEEB: CA 7A FEEC: 4A 6A Region timing values: F395: 1F 36 F648: 30 54 The last 2 changes shown converted the 262 scanline playfield into 312 (60hz vs 50hz). Sprite timing is not altered from the NTSC version, so 50hz runs a little slower. As you say, "more relaxing". All other byte changes are related to the missing logo and the multicart Bankswitch routine. Dolphin (pal60).bin
  • Create New...