Jump to content

Photo

Halo 2600 Source


15 replies to this topic

#1 Ed Fries OFFLINE  

Ed Fries

    Chopper Commander

  • 110 posts
  • Location:Seattle, WA

Posted Mon Aug 1, 2011 1:12 PM

Hi Guys,

I thought I'd celebrate the one year anniversary of the release of Halo 2600 at the Classic Gaming Expo by making the source code available. It's not particularly cleaned up or well documented but I put it here, as is, with the hopes that it will help some future 2600 homebrew programmers, just as I was helped by others who posted their code. Please let me know if you have any questions and thanks to everyone for their kind words about this project over the last year.

-Ed Fries

Attached Files



#2 Tjoppen OFFLINE  

Tjoppen

    Chopper Commander

  • 199 posts

Posted Mon Aug 1, 2011 2:26 PM

Hooray :)

I see some tricks in there that I have yet to try, like early HMOVE.
Here's some readability feedback, if anyone feels like fixing:
* Consistent indentation would be nice.
* Maybe use the "org" and "ds" directives to prettify the RAM declarations.

Everything being in one file felt a little unusual. I use Visual Studio for my projects with dependencies on generators and include files to make things automagically generate/assemble when needed. Makes life easier.

#3 Ed Fries OFFLINE  

Ed Fries

    Chopper Commander

  • Topic Starter
  • 110 posts
  • Location:Seattle, WA

Posted Mon Aug 1, 2011 2:37 PM

* Consistent indentation would be nice.


Indentation is (more or less) consistent if you view it in the editor it was created in. Which is... wait for it... Notepad.exe!

-EdF

#4 ScumSoft OFFLINE  

ScumSoft

    Moonsweeper

  • 348 posts
  • Location:Polysorbate 60

Posted Mon Aug 1, 2011 2:41 PM

Neat, I'll enjoy looking this over. Thanks!

[edit]
I took some time and formatted the text, so now it compiles and looks proper in Notepad++

Attached Files


Edited by ScumSoft, Mon Aug 1, 2011 3:37 PM.


#5 revolutionika OFFLINE  

revolutionika

    Quadrunner

  • 10,251 posts
  • Location:GA

Posted Mon Aug 1, 2011 2:41 PM

Hey, when is Halo 2600 2 coming out!!!!

Posted Image




#6 Keatah OFFLINE  

Keatah

    Quadrunner

  • 7,334 posts

Posted Tue Aug 2, 2011 5:32 AM

This is what the hobby is all about! Thanks a bunch! Good vibes going on in this thread and the BallBlazer project.

#7 dwane413 OFFLINE  

dwane413

    Moonsweeper

  • 263 posts
  • Location:Oklahoma

Posted Tue Aug 2, 2011 7:16 AM

Thanks. :thumbsup:

#8 TheRedEye OFFLINE  

TheRedEye

    Moonsweeper

  • 263 posts
  • Location:Berkeley, CA

Posted Thu Aug 4, 2011 11:57 AM

You're a treasure Ed, thanks for sharing.

#9 Syntaxerror999 OFFLINE  

Syntaxerror999

    Dragonstomper

  • 538 posts

Posted Mon Aug 8, 2011 1:20 PM

Hi Guys,

I thought I'd celebrate the one year anniversary of the release of Halo 2600 at the Classic Gaming Expo by making the source code available. It's not particularly cleaned up or well documented but I put it here, as is, with the hopes that it will help some future 2600 homebrew programmers, just as I was helped by others who posted their code. Please let me know if you have any questions and thanks to everyone for their kind words about this project over the last year.

-Ed Fries


Why not charge $32K for it ;)

#10 Random Terrain ONLINE  

Random Terrain

    Visual batari Basic User

  • 24,758 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Mon Aug 8, 2011 1:47 PM

Coming in summer 2012: Halo 2600 2 programmed using only batari Basic. :D

#11 vdub_bobby OFFLINE  

vdub_bobby

    Quadrunner

  • 5,831 posts
  • Boom bam.
  • Location:Seattle, WA

Posted Fri Aug 26, 2011 12:09 PM

What's the point of this?
PlayerTop
    LDA ScanLine	; 3
    CMP M1Pos	; 3
    PHP		; 3
    CMP M0Pos	; 3
    PHP		; 3
    PLA		; 4
    PLA		; 4

EDIT: And thanks for posting this. ;) :thumbsup:

Edited by vdub_bobby, Fri Aug 26, 2011 12:10 PM.


#12 Ed Fries OFFLINE  

Ed Fries

    Chopper Commander

  • Topic Starter
  • 110 posts
  • Location:Seattle, WA

Posted Fri Aug 26, 2011 12:24 PM

What's the point of this?

PlayerTop
    LDA ScanLine	; 3
    CMP M1Pos	; 3
    PHP		; 3
    CMP M0Pos	; 3
    PHP		; 3
    PLA		; 4
    PLA		; 4

EDIT: And thanks for posting this. ;) :thumbsup:


I don't really remember all the details but... The code is for turning on and off the missles. The stack must be pointed at ENAM1 and it looks like I wanted it pointed back at ENAM1 again after I was done but I didn't want to destroy the value in the X register.

#13 vdub_bobby OFFLINE  

vdub_bobby

    Quadrunner

  • 5,831 posts
  • Boom bam.
  • Location:Seattle, WA

Posted Fri Aug 26, 2011 2:26 PM


What's the point of this?

PlayerTop
    LDA ScanLine	; 3
    CMP M1Pos	; 3
    PHP		; 3
    CMP M0Pos	; 3
    PHP		; 3
    PLA		; 4
    PLA		; 4

EDIT: And thanks for posting this. ;) :thumbsup:


I don't really remember all the details but... The code is for turning on and off the missles. The stack must be pointed at ENAM1 and it looks like I wanted it pointed back at ENAM1 again after I was done but I didn't want to destroy the value in the X register.

Ah, of course!

Thanks for the explanation. :)

EDIT: And that probably explains all the places that look something like this...
;waste 16 cycles
  pla
  pla
  pla
  pla

Edited by vdub_bobby, Fri Aug 26, 2011 2:27 PM.


#14 LouisB OFFLINE  

LouisB

    Combat Commando

  • 1 posts

Posted Sun Sep 11, 2011 3:56 PM

Sorry - I'm a 2600 programming newb - how would I compile and run this in an emulator? Maybe you could point me in the right direction? Thanks

#15 Random Terrain ONLINE  

Random Terrain

    Visual batari Basic User

  • 24,758 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Sun Sep 11, 2011 4:04 PM

Sorry - I'm a 2600 programming newb - how would I compile and run this in an emulator? Maybe you could point me in the right direction? Thanks

If you just want to play the game, go here:

http://www.atariage....-the-game-here/


If you want to edit the code and compile it, this might be helpful:

http://www.randomter...w-davie-01.html

Edited by Random Terrain, Sun Sep 11, 2011 4:05 PM.


#16 SmileyDude OFFLINE  

SmileyDude

    Moonsweeper

  • 254 posts
  • 6502 Hacker
  • Location:Wilmington, MA

Posted Wed Nov 9, 2011 11:35 AM

The indentation is off because it looks ilke there is a mix of hard and soft tabs in the file. It looks like Ed has set his tabs to 8, so if you set your editor's tabs to 8, it should look better.

Ed -- thanks for posting this. I hadn't paid much attention due to the fact that I'm admittedly not a big fan of Halo, but my kids are. So I'm going to share this with them in hope of getting them more interested in the older gaming machines like the 2600. Also, I was really impressed that you did this in 4k -- I had assumed that you used bankswitching initially. Great work!




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users