Jump to content
IGNORED

Newbie to the 2600 and I have a question


Frozone212

Recommended Posts

So the people that developed for the 2600 back in the day, did they develop first on the Apple II or TRS80 or was it spur of the moment? I'm looking for any books that detail the development process, preferably nothing too technical.

 

I would love to develop for the system but I don't really want to do cross development the modern way (I only have 8gb and most of that is taken by Steam already) because of space issues. 

Are there any books that cover programming the 6507 with source code from the games or examples?

 

Edit: Took a look at the stella programming course by Andrew Davie.

 

Does the TIA section still count for HDTV's? I have a GSYNC monitor (Predator XB3 Nvidia) so does it count or can I simulate an RF or CRT display and if so, how?

Edited by Frozone212
confused
Link to comment
Share on other sites

My understanding is that the original Atari devs in 1976-77 were using a timesharing minicomputer that they had terminal access into.

 

So, if you really want the "Back In The Day" experience, your best bet would be to boot a teletype (or at least a terminal emulator) on a Unix or Linux system and get cracking with ed … but that would be an awful experience. (ed is designed for teletypes, not screens, so it works line-by-line. DOS's EDLIN.COM is similar, if you've had the misfortune of encountering it.)

 

*Edit* ~ see eg this 2016 post for more details:

 

If you fast-forward to the early 80s, you could instead fire up an Apple ][ or Commodore 64 with a 6502-series assembler and use that; e.g. Turbo Assembler on the C=64 could absolutely build Atari 2600 games, and it at least has a nice full-screen text editor.

 

… but I for one don't see the benefit of that; you may as well enjoy the benefits of a modern editor or IDE. As for cross-development, 8G is a huge amount of space. dasm, which many folks on AtariAge use, weighs in at about 250kiB on disk, and even 64tass that I use (which is, yes, the descendant of the venerable Turbo Assembler on the Commodore 64) is only around 2MiB. Add a reasonable text editor or IDE, and you're probably up to 150MiB, maybe 200MiB disk space, and can absolutely work in less than 1GiB of RAM if you're not doing much else at the time.

 

I'll leave it to others to point out various books, but the pinned thread at the top of this forum has a lot of resources listed.

 

  • Like 2
Link to comment
Share on other sites

yeah about that: this is the code for DASM:

 


    processor 6502
    
    include "vcs.h"
    include "macro.h"
    
    SEG
    
    ORG $F000
    
RESET

StartOfFrame

    ; Start of vertical blank processor
    
    
        lda #0
        
        sta    VBLANK
        
        lda #2
        
        sta VSYNC
        
            ; 3 scanlines of VSYNCH signal...
            
             sta WSYNC

                sta WSYNC

                sta WSYNC

            lda #0

            sta VSYNC           

               ; 37 scanlines of vertical blank...

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

            

               ; 192 scanlines of picture...

 

                ldx #0

                REPEAT 192; scanlines

                    inx

                    stx COLUBK

                    sta WSYNC

                REPEND

 

            lda #%01000010

            sta VBLANK                     ; end of screen - enter blanking

               ; 30 scanlines of overscan...

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

                sta WSYNC

            jmp StartOfFrame

            ORG $FFFA

            .word Reset          ; NMI

            .word Reset          ; RESET

            .word Reset          ; IRQ

        END
I get an unresolved error for the words

 

kernal.asm (1): error: Unknown Mnemonic 'ram:'.
kernal.asm (2): error: Unknown Mnemonic '$0000-$007F'.
kernal.asm (3): error: Unknown Mnemonic '$0200-$02FF'.
kernal.asm (4): error: Unknown Mnemonic '$1000-$1FFF'.
kernal.asm (5): error: Unknown Mnemonic '13'.
kernal.asm (6): error: Unknown Mnemonic '16'.

Fatal assembly error: Source is not resolvable.

C:\Users\smoke\Desktop\Atari Development 2600>dasm kernal.asm
Warning: Unable to open 'vcs.h'
Warning: Unable to open 'macro.h'
Warning: Unable to open 'vcs.h'
Warning: Unable to open 'macro.h'
--- Unresolved Symbol List
COLUBK                   0000 ????         (R )
Reset                    0000 ????         (R )
VSYNC                    0000 ????         (R )
WSYNC                    0000 ????         (R )
VBLANK                   0000 ????         (R )
--- 5 Unresolved Symbols


kernal.asm (1): error: Unknown Mnemonic 'ram:'.
kernal.asm (2): error: Unknown Mnemonic '$0000-$007F'.
kernal.asm (3): error: Unknown Mnemonic '$0200-$02FF'.
kernal.asm (4): error: Unknown Mnemonic '$1000-$1FFF'.
kernal.asm (5): error: Unknown Mnemonic '13'.
kernal.asm (6): error: Unknown Mnemonic '16'.

Fatal assembly error: Source is not resolvable.
 

ideas?

 

i'm new to cross development, I'd much rather be using a dedicated IDE

 

 

Link to comment
Share on other sites

Most IDEs have a mode for assembly (not necessarily 6502, but that doesn't matter too much) and a way to plug in the name of the assembler you want to use. Looks like the first error is the one you should address first, Warning: Unable to open 'vcs.h' … you probably want to get those files (vcs.h, macro.h) and put them somewhere where dasm can find them. I don't use dasm myself, but I suspect you need to pass like -I /path/to/includes (usually -I which is capital i but I don't know for sure). I'm sure the dasm manual explains it in some detail.

Link to comment
Share on other sites

Best practice when asking for help on a project is to attach the file containing your source code. This is because the spacing is important and copy/paste into the forum will often mess that up, making it difficult to diagnose issues.

 

Quick fix for the vcs.h and macro.h issue is to copy those include files into the same directory that contains your source. You'll find those files in the machines/atari2600 directory inside dasm archive.

 

For additional help with dasm check out AtariAge's Club DASM

 

You might also like to check out Collect, my tutorial. It takes you step by step thru creating a finished game.

  • Like 1
  • Thanks 1
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...