+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  Atari releases 7800 games/OS source code.
Pages: [1]
Author Topic: Atari releases 7800 games/OS source code.  (Read 2 times)
I.S.T.
Guest
« on: July 04, 2009, 11:25:42 am »

http://www.programmerfish.com/source-code-of-several-7800-games-released/

For any one who is interested in those old systems.
Starscream
Guest
« Reply #1 on: July 04, 2009, 02:11:05 pm »

Apparently, this isn't an official Atari release. It's made by Atari museum (this is not Open-Source code). There are some interesting (from a historic perspective) arcade-conversions among them (Commando, Ms. Pacman), which is also why I'm wondering,  would any official release even be possible without the original developers/rights holders (e.g. Capcom in case of Commando)?
I.S.T.
Guest
« Reply #2 on: July 04, 2009, 02:36:39 pm »

By OS i meant Operating System.

>.>
creaothceann
Guest
« Reply #3 on: July 04, 2009, 03:45:57 pm »

Quote from: Starscream on July 04, 2009, 02:11:05 pm
Apparently, this isn't an official Atari release.

Looks quite legit to me though.

----------------------------------------------------------------

Anyway, looking through the source is fun Smiley

Quote from: 7800DEVSYS\\README2.DOC
Code:
Feel free to telephone John Feagans at Atari (U.S.) at area  code
(408)  745-4923  any  time you have a question  about  using  the
software.   He  wrote the download program and the  transfer  rom
code.   He's the one who did not write any support  documentation
to go with his software.

Quote from: BASE78\\BASE78.IMG
Code:
Oh! What a fine boy is Dave Staugas.

Quote from: PAL7800\\HISCORE.S
Code:
** ASTEROIDS FOR THAT DAMN ATARI 3600, OR IS IT 7000, I FORGET. *
** WRONG!! IT'S THE ATARI 7800 PRO SYSTEM.  TA DA! *

Quote from: PAL7800\\JOY.S
Code:
LDX OFFPLAY2 ;POWER STEERING BABY!


BNE CKJOYRTS ;NO.  DON'T DO RANDOM VIOLENCE


;HERE ON OLD-STYLE SINGLE BUTTON JOYSTICK PRESS.
GOTONE:
LDA ONEBUT ;TURN OFF TWO-PLAYER BIT IMMEDIATELY
ORA RJBITS,X ; TO AVOID BURNING OUT HARDWARE

Quote from: PAL7800\\MAIN.S
Code:
DROPCODE:
LDA     CODE,X ;CODE IS PRETTY RANDOM.
STA     RAND,X ;AT LEAST OURS IS.

Quote from: PAL7800\\UFO.S
Code:
BEQ AIMSHOT ;MR. BILL AIMS HIS SHOTS
JSR NEWRAND ;SLUGGO IS RANDOM


PICKSRAN:
JSR NEWRAND ;PICK A SHIP RANDOMLY
ASL ;WE'RE SUCH ASL'S
BCC AIMSHIP1

Quote from: PAL7800\\UTILS.S
Code:
** RANDOM NUMBER ROUTINES, >NOT< PREVIOUSLY IN RANDOM.S **
* NEWRAND: A WHOLESOME RANDOM NUMBER JENERATER FROM KNUTH (NOTABLE PEDIGREE)


* ROTATE THROUGH THE COLORS TO TWINKLE THE STARS.
TWINKLE:
JSR NEWRAND ;DECIDE WHICH STARS TO TW'INC'LE

Quote from: SPHINX\\SDEF.S
Code:
TAKEOVER: .ds.b     1                      ;ARE THESE NEEDED ANYMORE GUYS


NEXFRAME: .ds.b     1                      ;WHAT THE FUCK???


GSCRFLAG: .ds.b     1                      ;FLAG FOR MAINLOOP, SAYING WE SCROLLED
GCOARSE:  .ds.b     1                      ;MORE SCROLLING FLAGS FOR THE MASSES
FUCKFLAG: .ds.b     1       ;11             ;WHO THE FUCK KNOWS!


SPNZ:     .ds.b     1                      ;UPDATE THIS GUYS???


ZBUFF0:   .ds.b     33                     ;CHARACTER BUFFERS
ZBUFF1:   .ds.b     33                     ;ALSO USED FOR TITLE PAGE SHIT


          STX     TEMP3                  ;FIXED VP TO AVOID SANDFUCKER MODE


POSTGTFL: CMP     #126                   ;A MAGIC NUMBER IF I EVER SAW ONE


*         ROUTINE (YOU MEAN CODE FRAGMENT) TO DO DEATH ANIMATION


          LDX     #$FF                   ;FUCK WITH THE MOVEMENT FLAG


          LDX     SHOTCNT                ;COMMENT THIS


          BNE     ADJYDONE               ;NEVER HAPPENS.  WHAT DA FUCK??
ADJYAIR:  CLC                            ;WHAT GIVES FOLKS??


ASHOT1:   CMP     #UWECOL                ;WHAT ABOUT A UWE
          BNE     ASHOT2
lda WANIMCNT-UWEDEX,x ;Is the uwe exploding?
cmp #13 ;If yes, don't kill again.

Quote from: SPHINX\\SGNDOBJ.S
Code:
;THERE ARE FOUR FIREMODES -- 0) MELLOW 1) RANDOM 2) SPASTIC 3) HARDCORE


          ;THIS MUST BE THE HARDCORE DRIVER.  WE KEEP GOAL RANDOM IF NOT IN
          ;RANGE OF X.  IF IN X RANGE, WE KEEP GOAL LOW UNTIL IN Z RANGE.  THEN
          ;WE RAISE GOAL TO ZAP THE DESERT FUCKIN' FALCON

Quote from: SPHINX\\SGRAPH8.S
Code:
          .dc.b      $FF,$00                ;WINGS9        255  TH-THAT'S ALL FOLKS

Quote from: SPHINX\\SINIT.S
Code:
          LDA     #WINGS0&$FF             ;HACK FIRST AND LAST CHAR OF WINGMAP2
          STA     WINGMAP2               ;THIS IS TO SAVE BYTES YOU REALIZE


PALWD2:   .dc.b     $00,$00,$31            ;CREST (NOT THE TOOTHPASTE!)


*         CHAR MAPS FOR ONE AND TWO PLAYER SHIT


          STX     JERKOFF

Quote from: SPHINX\\SKERNEL.S
Code:
;         BIT     FUCKFLAG               ;PUT THESE BACK TO SEE IF LOADER IS
;         BPL     FINE                   ;INTERRUPTED BY THIS DLI
; GOTCHA  NOP


          LDA     #$50                   ;COMMENT


          LDA     #0                     ;BLACKGROUND


          LDA     #0                     ;FOR FUTURE EXPANSION AND IMPERIALISM


          LDA     #0                     ;ENOUGH TIME HAS ELAPSED TO ALLOW CAPS
          STA     $1                     ;TO DISCHARGE SO CONTINUE FUCKING WITH
          LDA     #$14                   ;IO HARDWARE


          LDA     #ALADIN1               ;START TUNE     THIS IS BULLSHIT
          JSR     TUNIN                  ;COMMENTED OUT CAUSE I CANT STAND IT


GAMSTATE: BIT     GAMEOVR                ;IF OVER BOOGIE ON TO TITLE PAGE


          LDX     #$7F                   ;WHO THE FUCK KNOWS ANYWAY


          JMP     MAINLOOP               ;AND AGAIN AND AGAIN


GOTONE:   LDA     ONEBUT                 ;SET ONE-BUTTON MODE IMMEDIATELY
          ORA     RJBITS,X               ; TO AVOID DESTROYING HARDWARE!

Quote from: SPHINX\\SMAGIC.S
Code:
lda PTIMER ;Already got something cookn'?


NOWHI:    LDX     PLAYER                 ;THIS SHIT YOU SEE HERE AND MANY PLACES
          BEQ     ONER                   ;GETS THE APPROPRIATE PLAYER INDEX INTO
          LDX     #3                     ;X

Quote from: SPHINX\\SMCP.S
Code:
          LDX     #CRISVARS&$FF           ;SORRY CRIS! HAD TO DO IT


DICKLESS: CMP     #16                    ;IF >= 16 THEN WE MUST GO TO RIGTMASK


          TAX                            ;CLEVER HACKERY.  DON'T ASK

Quote from: SPHINX\\SNILE.S
Code:
          CMP     #$F4                   ;EMPIRICALLY DETERMINED. BOO HOO


          LDA     FLTUNE,X               ;JUST FOR JOHN, HONEST.


.EXIT1: LDA #$00 ;TELLS JOHN NOT TO DO UWES


;THE CONSTANTS IN THIS ROUTINE ARE RUMORED TO BE CLOSE

Quote from: SPHINX\\SSUBRS.S
Code:
*PROGRAMMERS BEWARE: THIS CODE IS OLD AND VERY UGLY! TAMPER AT YOUR OWN RISK


          CMP     #$F1                   ;TALK TO JEM ABOUT THIS ONE GRRRR!


          STA     KTEMP1                 ;REPLACE OLD KTEMP1 (THIS IS WHY WE
                                         ;AND WITH F ABOVE) I DON'T SEE WHY THIS
                                         ;WOULD EVER WORK

Quote from: SPHINX\\ZERODEF.S
Code:
ENDRAM0: .ds.b 1 ;MOVE ME AS NEEDED  YES SIR
Lleu
Guest
« Reply #4 on: July 05, 2009, 05:16:40 am »

Quote from: creaothceann on July 04, 2009, 03:45:57 pm
Anyway, looking through the source is fun Smiley

CAPSLOCK OVERLOAD!

But yeah, the comments are an interesting view into Atari development culture.
syntax error
Guest
« Reply #5 on: July 06, 2009, 02:08:30 pm »

The 7800 is a unique Atari console supporting also 2600 carts and using the same sound chip.

The 7800 has a GPU that is very different to program than the other consoles.
It allows even fractal bitmapped graphics and a lot of sprites but is very CPU load heavy.
Its hires mode isn't very useful,you see that they designed it fist for lowres.
This console has a very simple sound chip,cost reasons.
It may even be possible to create a IDE like that for NES or hack into one of the existing 6502 compilers.

P.S. the 7800 BIOS source is also there.
Pages: [1]  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC