Jump to content
IGNORED

Missile Command Arcade


Nukey Shay

Recommended Posts

Nukey, are you STILL sticking to your story that kernal programming is just too tough for you to take on in a "from scratch" title?

 

Don't get me wrong, as far as I can tell you are the KING of Hacks, and if that's just your thang, cool.  But man, you have programming cajones that make some "published" homebrewers (myself included) look pale and weak. I mean, I can barely understand other people's well commented source, never mind a raw dissasembly.

882656[/snapback]

 

 

It's no story...I can barely hobble together an intermission kernal with heavy use of borrowing :P But weeding through already-working code is not so difficult. The game already works...so all I need to do is make sure that the cycle times match in critical areas for added code. Assemble - doesn't work - try something else. Multiply that by a few hundred times ;) Been hacking games for 2 decades, so I'm kind of used to it by now.

 

 

 

Latest assembly:

The original game kept 2 sets of indirect GFX pointers in ram...1 set of 12 bytes for the digits (with some reused to display the falling missiles and explosion), and 1 set of 12 bytes for the cities. The digit pointers are updated just before the kernal needs them, so it was pretty easy to reuse all of them to display the cities as well (so all the program needs to do is transfer the low bytes for each city pointer to the score pointers...and that saves half of the ram (6 bytes) that was devoted to them). I also moved all GFX to a single page, so that the high bytes in the pointer table never needs to be altered. Ram addresses $AF to $B4 are now free to use.

I also converted the game to include an 8k version, since I was virtually out of free romspace (only 16 bytes free in the 4k version). The 8k version has nearly 2k of free space in each bank...enough to handle multiple kernals and whatever to try to solve this bomber problem. I only needed 2 redundant routines to do this, but with careful bankswitching, those routines could probably be eliminated (not a real big deal, since neither one used very much space).

MCasm.zip

  • Like 1
Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...

Why not make the fire controls on the right stick be "left - fire - right" that way people could use the three button 2600 Track & Field controller right out of the box without modification? Combine that with REAL Trackball control like TJ's Missle Command hack and this would be the ultimate finished hack.

 

You could then make the color/bw switch the pause as it should be for the 7800....

Link to comment
Share on other sites

I didn't really worry about different types of controllers...so I just coded a bit to check the status of controller 2. To alter it to use left-fire-right instead would require a couple more instructions to merge the INPT5 fire button status into the value loaded from SWCHA (using LSR's and an AND instruction)...and booster grip/trackball ideas are completely out of my area (since I have no idea about how each of those work). But the controller routines are commented in the assembly if anyone wants to take a stab at either ;)

 

But I'm confused about what you mean by the pause feature :? Since the left stick button is unused in any case, I thought it made a good candidate to activate the pause? The color/bw switch is already in use as a NTSC/PAL switch in this hack (so that the same binary works regardless of hardware). :?

Link to comment
Share on other sites

  • 2 weeks later...
  • 7 months later...

Latest version:

I made the missiles a bit larger so they show up better...and also corrected the hilltop gfx (I even included an "atmosphere" for the city area). The cursor is now an X-crosshair (unlike the arcade's +-crosshair...but better than a dash!)...tho it's still a bit buggy. Out of free space (as long as I stick to 4k).

MCarcade.zip

Link to comment
Share on other sites

I don't have a Starplex Controller yet, but I have a Track and Field Controller. Would it be possible to implement another controller scheme mapping the left button to the left cannon, the right button to the right cannon, when both are pushed simultaneously they fire the middle cannon?

 

 

If anyone like to use the TRACK & FIELD controller then heres somthing I made. Its a overlay of Missile Command Control Panel from the arcade CPO just print it and glue it on a hard poster paper then cut it and place it over your TRACK & FIELD controller. :cool:

post-5587-1152955005_thumb.jpg

  • Like 2
Link to comment
Share on other sites

Latest version:

I made the missiles a bit larger so they show up better...and also corrected the hilltop gfx (I even included an "atmosphere" for the city area). The cursor is now an X-crosshair (unlike the arcade's +-crosshair...but better than a dash!)...tho it's still a bit buggy. Out of free space (as long as I stick to 4k).

 

 

Here's my what if mockup of my homemade Missile Command overlay on the Track & Field controller if anyone can print this BMP I have here for anyone to us it for the game.

 

mcoverlayontfcontrolpk5.jpg

2600_missile_command_overlay_BMP.zip

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

I've upped the binary to 8k to work in additional screens (the "Missile Command" boot screen and "The End" game screen). I've also added bombers and satellites...though they don't have any offensive capability. Their presence is enough to distract the player tho...especially considering that the game is already more lethal than it's arcade counterpart - due to the fact that all cities can be targeted in a single wave (the arcade game limits this to 3 cities per wave).

Running the game using Stella appears to have a couple of glitches...the crosshair is misaligned and the ground area is non-existant (the latter being present in the original game as well). Anyone confirm?

MCarcade.zip

Link to comment
Share on other sites

Could you be more specific? There are a couple of minor bugs in the program (these are detailed in the comments of the assembly)...but the program still runs. If it didn't, it wouldn't be posted...since I'm using the latest version of z26 to test it :ponder:

 

Current version adds the end-of-wave score tally screen (showing counted missiles/cities), 1-player game high score function (displayed as player 2's score), and "paused" text (game sounds also cleared when pause is selected).

 

It currently resides in just over 6k of space...so a Supercharger version could be made if a bit more optimizing is done.

MCarcade.zip

  • Like 1
Link to comment
Share on other sites

Could you be more specific? There are a couple of minor bugs in the program (these are detailed in the comments of the assembly)...but the program still runs. If it didn't, it wouldn't be posted...since I'm using the latest version of z26 to test it :ponder:

 

Current version adds the end-of-wave score tally screen (showing counted missiles/cities), 1-player game high score function (displayed as player 2's score), and "paused" text (game sounds also cleared when pause is selected).

 

It currently resides in just over 6k of space...so a Supercharger version could be made if a bit more optimizing is done.

 

I havein had any working emulator on linux so I cant play any 2600 games or any emulators for over a year, is there any screenshots of this game?

Link to comment
Share on other sites

I havein had any working emulator on linux so I cant play any 2600 games or any emulators for over a year, is there any screenshots of this game?

Both, z26 and Stella support Linux. Downloading and installing them is just a matter of 5 minutes.

 

 

Thats just in I dont know ANYTHINg about linux at all my roomate try to install but he said that the OS on the linux I have dont have all the files it needed to run any of them :sad:

Link to comment
Share on other sites

Pressing fire pauses the game now.

 

Is that right?

 

Yes...the left fire button is supposed to pause the game, because I changed the firing control to use the RIGHT joystick instead (that way, you get 3 fire buttons - one for each missile cache). That was the whole point to hacking it ;)

If you have a button controller like the Track and Field one, you can plug that into the second port. Left and right handle the corresponding edge caches, while down (or fire) handles the center one. The left controller fire button was no longer used, so I altered it to handle pause instead (the B/W switch is already being used to handle NTSC/PAL switching).

Link to comment
Share on other sites

Pressing fire pauses the game now.

 

Is that right?

 

Yes...the left fire button is supposed to pause the game, because I changed the firing control to use the RIGHT joystick instead (that way, you get 3 fire buttons - one for each missile cache). That was the whole point to hacking it ;)

If you have a button controller like the Track and Field one, you can plug that into the second port. Left and right handle the corresponding edge caches, while down (or fire) handles the center one. The left controller fire button was no longer used, so I altered it to handle pause instead (the B/W switch is already being used to handle NTSC/PAL switching).

Got it.

 

Missile Command Arcade ofcourse.

 

Thanks, Nukey.

 

Great Hack.

 

8)

Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...