Live data from Hacker News

I believe 6502 instruction set is a good first assembly language

nemanjatrifunovic.substack.com

81–90 of 297 posts

Re: I believe 6502 instruction set is a good first assembly language

#81

I really don't see how. When students are first exposed to computer programming, it might make sense to start with toy / compact languages that don't have any real-world use. But assembly is not the first language you're supposed to learn! It's very utilitarian and most commonly just used for debugging and reverse engineering. So why would you waste time on the assembly language of a long-obsolete platform? Plus, the…

> assembly is not the first language you're supposed to learn

Circuit design and/or HDL, then you can make the CPU to run your hand-assembled program. ;-)

Re: I believe 6502 instruction set is a good first assembly language

#82

I cannot agree that the simplicity of the 6502 wins over the 68000. The 68000 has more registers and wider data types: but the registers are all uniformly the same. It's really just two registers A and D, copied a bunch of times in to D0 to D7, and A0 to A7. Whatever you can do with D0 can be done with D3 and so on. Some A's are dedicated, like for a stack pointer. Simplicity of structure has to be balanced with simp…

6809 for me was ideal first assembly language. The 6502 was too limited.

Re: I believe 6502 instruction set is a good first assembly language

#85

Earlier quoted context omitted.

6502-based microcomputers like the Apple II shipped with BASIC and a 6502 monitor. The reason is that BASIC and low-level monitors can fit into tiny amounts of memory.

My C64 didn't come with a monitor. I typed one in from a magazine, then learned assembly by entering instructions directly into it. I was so thrilled to discover assemblers later.

I thought I was in heaven when I got the Action Replay cartridge (not the genuine, but a clone with the same software) that came with a monitor, a "freezer", fastloader, and various disk utilities.

Re: I believe 6502 instruction set is a good first assembly language

#86

I prefer RISCV as an starting assembly language because: it has good design, it's more intuitive, it has modern language and tool support (GCC, LLVM, Rust, etc.), and it runs on QEMU and real available hardware.

Last time I checked there was yet to exist a macro assembler worth its name for RISC-V.

Re: I believe 6502 instruction set is a good first assembly language

#87

I really don't see how. When students are first exposed to computer programming, it might make sense to start with toy / compact languages that don't have any real-world use. But assembly is not the first language you're supposed to learn! It's very utilitarian and most commonly just used for debugging and reverse engineering. So why would you waste time on the assembly language of a long-obsolete platform? Plus, the…

We managed alright as 10 year old kids, as second language following up those BASIC programming comic books.

For a small taste of the past,

https://www.atariarchives.org/

Re: I believe 6502 instruction set is a good first assembly language

#88
post #56
post #31

Earlier quoted context omitted.

I started with BASIC on a Vic 20 in 1979 in a computer class for kids. Then I got my own Atari 400 at home, so I learned BASIC on that. Then around 1984 I got a Commodore 64 and it was amazing. I quickly got past the BASIC part of the C64 manual and in the back of the manual they had a memory map, all the hardware registers for all the chips, and then all the 6502/6510 opcodes. There was even an entire schematic for…

Was the 400 as much of a pain to type on as it looks? I was lucky to inherit an 800 when my uncle bought his first IBM clone, and those had nice keyboards.

Before I got the C64 I got an Atari 600XL because the keyboard was a real keyboard. I had really hacked a lot on the Atari 400 keyboard, so much that it was becoming pretty worn in places, so the better keyboard was really an upgrade.

Re: I believe 6502 instruction set is a good first assembly language

#89

I cannot agree that the simplicity of the 6502 wins over the 68000. The 68000 has more registers and wider data types: but the registers are all uniformly the same. It's really just two registers A and D, copied a bunch of times in to D0 to D7, and A0 to A7. Whatever you can do with D0 can be done with D3 and so on. Some A's are dedicated, like for a stack pointer. Simplicity of structure has to be balanced with simp…

I've always loved the Z80 and felt home with the 68k.

Re: I believe 6502 instruction set is a good first assembly language

#90
The 6502 was the first cpu that I programmed in machine code - on my Vic-20 and BBC Micros at school in the 80s. Later I wrote some code for the 6809. And later still I used 68000 dev boards as an undergraduate.

Its been a while now, but I remember feeling that the 68k was clearly powerful and elegant and a proper cpu, but also that I had little hope of understanding all the details. The 6502 was my first, and with hindsight was far less elegant with plenty of warts, but I felt at the time that I understood it pretty well. The 6802 was somewhere inbetween, I guess, and a very nice cpu to work with

I've never thought about it before, but I suppose I benefited from that progression 6502->6809->68k. Whether or not it makes sense now, I couldn't say.

(Never got on with the Z80. That brash upstart /s)

Post reply on HN