2 ms·
I had a C64 as a kid (~13 years old), and like you, after doing as much as I could do in BASIC, I knew I had to learn machine language. I saved up money and bou
by ryandrake 2y ago
I had a C64 as a kid (~13 years old), and like you, after doing as much as I could do in BASIC, I knew I had to learn machine language. I saved up money and bought the C64 Programmer's Reference Guide, learned the opcodes, the memory map, how to work with peripherals, and so on, but had no way to actually input and assemble programs, so I was stuck. The book referred to the 64MON cartridge, but as a little kid I had no idea where/how to get it. I ended up writing writing a few programs on paper, hand converting them into numbers to POKE into memory and then SYS to them, but obviously that was the really hard way to do anything.
It wasn't until my dad sold the C64 and upgraded the family to a C128 (with a built in assembler/monitor) that I finally got to try my programs, but by that time, the 8 bit world was winding down and everyone was moving to PCs. To this day I wish C64 shipped with the 64MON cartridge.
- leptons 2y agoMy first experiments with machine code were using POKE statements too. Once I knew that I knew what I was doing, I got deeper into it. Fortunately around the same time I got a 300baud modem and found some assembley language tools on BBSs. The modem was key, it opened up a much wider world to me. I learned all kinds of programming tricks from others, like how to disassemble and read other's programs.
- AStonesThrow 2y agoI was about your age with the same interest in the system internals. I wonder if I owned the Programmer's Reference Guide. However, I decided that my programming directly in assembly wouldn't be productive or possible. I subscribed to Compute!'s Gazette, and there were plenty of type-in BASIC programs, as well as the crazy machine-language data-entry bonanzas that yielded arcade games and a word processor. I did my own BASIC programming, and I was satisifed with experimenting at that level. It was the systems architecture that enthralled me, though. Just to peruse the diagrams of how RAM and ROM were laid out; the bank switching; registers and I/O routines; programming the SID chip; sprites and colors and fonts. By the time I went into college I was quite well-primed for subjects like systems architecture, and the upgrade path at home from 286 to Windows PCs was bittersweet, as I left behind those raw system internals for more opacity and high-level sysadmin tasks. But I never forgot the 6502 and 6510 that started it all for me.