Frozone212 Posted September 9, 2022 Share Posted September 9, 2022 (edited) 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 September 9, 2022 by Frozone212 confused Quote Link to comment Share on other sites More sharing options...
+Bruce-Robert Pocock Posted September 9, 2022 Share Posted September 9, 2022 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. 2 Quote Link to comment Share on other sites More sharing options...
Frozone212 Posted September 9, 2022 Author Share Posted September 9, 2022 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 Quote Link to comment Share on other sites More sharing options...
+Bruce-Robert Pocock Posted September 9, 2022 Share Posted September 9, 2022 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. Quote Link to comment Share on other sites More sharing options...
+SpiceWare Posted September 9, 2022 Share Posted September 9, 2022 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. 1 1 Quote Link to comment Share on other sites More sharing options...
Frozone212 Posted September 9, 2022 Author Share Posted September 9, 2022 (edited) thank you all so very much for the help IT WORKS! Edited September 9, 2022 by Frozone212 Finally did it 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.