I started programming at age 13 and Microsoft QBasic on DOS was my first pick. Some time later, I studied a little bit of X86 assembly language but didn't dive much deeper into it than writing hello world and some basic loops. When I was 15, I found this group on Yahoo with Brazilian Atari 2600 programmers and I instantly joined them. Now, after two decades and some 😝, I work with software development and requirements analysis and am a hobbyist retro videogame consoles programmer. I mostly code for Atari 2600, NES and SEGA Master System/Game Gear.
I love all computer hardware, as long as someone out there is making something that seems impossible for it. Which is why I love the Atari so much, because practically anything more than a static sprite on a blank background seems impossible!
As a historical footnote the Mac uses the VBI and VBL tasks to calculate and reposition the cursor during blanking interrupts - which is why the Mac cursor is so smooth since it’s movement interval is synched to a an exact hardware interrupt interval. All other OSes use software timers to move the cursor which is why they are skittish.
Started programming back in 1983 with the TI 994A when I was 14. Programmed a bunch of video games for it in basic and extended basic. Began programming professionally in 1999 after finishing Army service and receiving a BS. Programmed mostly in C++ and Java and some VB. Never did any assembly or atari programming so I thought I'd take a look.
Thanks, I like it too! I went through a few guitars before I stuck with the Casino. Just bonded with it. This one isn't a reissue, it's a standard stock Epi Casino.
Is the X register 8 or 16 bits? I thought the index registers are 16 bits. Also, it appears that the TIA is memory mapped at address $00xx, is this correct?
The X, Y, and Accumulator are all 8 bit registers on the 6502 and 6507 with the maximum value of 255. The TIA is mapped at $0000 - $003F, while the 128 bytes for RIOT RAM is mapped at $0080 - $00FF.
Sorry Jacob, just saw this comment. RU-vid doesn't automatically show me 2nd level comments for some reason! The next video will have more detail on this, but the short form is, you would use Indirect mode for your load instruction, which will use the address you specify with the instruction, along with the byte right beside that address as the 16-bit address.