Jump to content

Search the Community

Showing results for tags 'masochism'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Atari Systems
    • Atari 2600
    • Atari 5200
    • Atari 7800
    • Atari Lynx
    • Atari Jaguar
    • Dedicated Systems
    • Atari 8-Bit Computers
    • Atari ST/TT/Falcon Computers
  • Gaming General
    • Classic Gaming General
    • Classic Computing
    • Modern Gaming
    • Prototypes
    • Arcade and Pinball
    • Emulation
    • Hardware
    • Gaming Publications and Websites
    • International
  • Marketplace
  • Community
  • Game Programming
  • Site
  • Classic Gaming News
  • The Club of Clubs's Discussion
  • I Hate Sauron's Topics
  • 1088 XEL/XLD Owners and Builders's Topics
  • Atari BBS Gurus's Community Chat
  • Atari BBS Gurus's BBS Callers
  • Atari BBS Gurus's BBS SysOps
  • Atari BBS Gurus's Resources
  • Atari Lynx Programmer Club's CC65
  • Atari Lynx Programmer Club's ASM
  • Atari Lynx Programmer Club's Lynx Programming
  • Atari Lynx Programmer Club's Music/Sound
  • Atari Lynx Programmer Club's Graphics
  • The Official AtariAge Shitpost Club's Shitty meme repository
  • The Official AtariAge Shitpost Club's Read this before you enter too deep
  • Tesla's Vehicles
  • Tesla's Solar
  • Tesla's PowerWall
  • Tesla's General
  • Harmony/Melody's CDFJ
  • Harmony/Melody's DPC+
  • Harmony/Melody's BUS
  • Harmony/Melody's General
  • ZeroPage Homebrew's Discussion
  • Furry Club's Chat/RP
  • PSPMinis.com's General PSP Minis Discussion and Questions
  • PSPMinis.com's Reviews
  • Atari Lynx 30th Birthday's 30th Birthday Programming Competition Games
  • 3D Printing Club's Chat
  • Drivers' Club's Members' Vehicles
  • Drivers' Club's Drives & Events
  • Drivers' Club's Wrenching
  • Drivers' Club's Found in the Wild
  • Drivers' Club's General Discussion
  • Dirtarians's General Discussion
  • Dirtarians's Members' Rigs
  • Dirtarians's Trail Runs & Reports
  • Dirtarians's Wrenching

Blogs

There are no results to display.

There are no results to display.

Calendars

  • AtariAge Calendar
  • The Club of Clubs's Events
  • Atari BBS Gurus's Calendar
  • ZeroPage Homebrew's Schedule

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website


Facebook


Twitter


Instagram


YouTube


eBay


GitHub


Custom Status


Location


Interests


Currently Playing


Playing Next

Found 1 result

  1. After my experience with 2600 Midnight Magic and the response I decided to try a whack at porting a simpler but motion oriented game, Seaquest. I don't intend to make a career out of porting 2600 games -- for sanity reasons, if nothing else -- but this was a fun little game I remember that was good for quick runs growing up, and I figured I'd try a game that was a bit more sprite heavy. Again, this is a close-as-possible port of the original 2600 game, based on the original binary code. Porter's comments: Midnight Magic was a 16K banked game, but Seaquest is just 4K. No banking to rip out. This time the porting cost was +0.5KB. Joystick 1/2 for controls, Start for Game Reset, Select for Game Select (1 or 2 players), Option flips both left and right difficulty. B&W/Color hardwired to Color. Default is easy difficulty, switching to hard slows down the shots. Like many 2600 games, this was made for NTSC and it will play slower and with a bit funny colors on PAL. Sorry, but the game doesn't have fraction tables and PAL GTIA colors are significantly different, and I'm porting these games as-is. Adaptation is an exercise left for the reader. Decoding sprite positioning from a 2600 display kernel... sucks. I had to duplicate some data to emulate player reflection. As I expected, repeating sprites would be a pain. Seaquest displays up to five 8-bit player sprites on a scanline plus a missile, so a straightforward mapping to GTIA sprites wasn't an option. Since only one of the players was repeated I reimplemented the enemies on top of the playfield. There's also quite a lot of interesting code in the game to deal with the case of you shooting out one of a group, by recomputing a new horizontal position and switching the NUSIZ1 pattern to match the remaining enemies, which took me a while to figure out (I couldn't figure out at first why the sharks were jumping when shot on some waves). If someone wants to try putting this in ROM, there was one location that I used self-modifying code (because I was lazy). Dethreading the player sub and torpedo from the entire display kernel was annoying, but the huge pain in the butt was the divers. It turned out they were rendered using the ball, by moving and re-sizing it on every scanline. Once I figured this out I was able to rip out a ton of the display kernel and remap the divers to a regular GTIA player. The entire display is shifted a bit left than I would have expected. I didn't notice this until I put in the sea bed and started comparing the position of everything. I've kept the existing positions, but one side effect is that you can spot sprites popping in on the right side. Based on the 40-bit playfield, I think this is correct and was intentional to prevent sprites from wrapping around HBLANK on the TIA, but I don't have a real 2600 to verify (the right part of the screen is cut off in Stella). Unlike MM, Seaquest does use hardware sprite collisions. Fortunately, GTIA's collision capabilities are a superset of TIA's and this was easy to map. The TIA 5-bit div 6 sound is a problem here again, this time more apparent as it affects the player shots. I've mapped it the same way, but it doesn't have the nice metallic sound. I thought about trying high speed IRQ emulation, but bands of background gradients made this difficult. seaquest.zip
×
×
  • Create New...