|
VAX 11 assembly language in the late-80s for me.
|
|
|
|
|
I started out on the PDP-11 but it was with DIBOL.
Scott
|
|
|
|
|
Greg Utas wrote: Haven't written any in over 40 years, since writing it on a PDP-10 while at university. But it definitely has a charm to it.
Back in my day, we used to carve our code with a hammer and chisle on stone punch cards.
Nothing succeeds like a budgie without teeth.
|
|
|
|
|
I remember painting my first program on a cave wall somewhere in France.
|
|
|
|
|
Yes, that led to the very first method: CRN (Convert Roman Numerals).
If you can keep your head while those about you are losing theirs, perhaps you don't understand the situation.
|
|
|
|
|
In the 1980's I was using a PDP-11/34a in High School. I LOVED MACRO-11 Assembly Language.
Basically it was C without the {}, LOL...
I was running RSTS/E time sharing (32K Words of memory to support almost 30 users). RK06 Drives.
Paper Terminals (Decwriter 300s I Believe, and we had 3 CRTs. One with COLOR, DEC 240?)
EDT for an editor (or TECO if you were on paper. Imagine EDLIN with Type-ahead! ex$$)
Curious, Gates replied to me that they were running TOPS-10 for the O/S on the PDP-10.
I am still amazed by everything I was able to learn/do while in High School.
My 3 Favorites:
1) I learned how to read another users keyboard buffer ("You spelled that wrong!", LOL)
2) I learned how to HALT the computer, and force my non-priv user to be a super-user! Awesome! (JFPRIV? Bit)... thanks to Michael Mayfields Book on the internals of RSTS/E book I bought with my own cash!
http://www.dmv.net/dec/pdf/rsts80inta.pdf WOW... I remembered JFPRIV correctly after 32 YEARS!
3) I rewrote the startup routines so the 7-10 minute startup process was done in under a minute!
[I cheated. 80% of the time was changing the terminals to 300 Baud, etc. I recompiled the operating system, and modified the assembly, so the terminal settings were right for 30/33 terminals, and then only fixed the remaining 3. Even that, I rewrote in ASSEMBLY vs. BASIC PLUS 2 (BP2)]
4) I figured out how to open a tape as a non-structured file and modify it. This allowed me to copy the boot instructions from a DISK (which I learned was literally a boot loader), and write it to the tape, with a device adjustment. Making the tape, in fact, bootable. [I think I did this just after I graduated, because we did NOT have a tape drive, but I landed a job programming on PDP-11/70s]
Oh, those were the days...
|
|
|
|
|
Great stuff, thanks for sharing.
|
|
|
|
|
I got to use MASM with x86 assembly in undergrad. Wasn't a great experience.
I've used it once since then, to cheat in a game that had anti-cheat protection.
|
|
|
|
|
Kris Lantz wrote: I've used it once since then, to cheat in a game that had anti-cheat protection.
Minesweeper was never the same after that.
|
|
|
|
|
But does it cover 6502?
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
|
I grew up on 6502 - instead of cereals and milk...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
My first bit of tech was an NES, which did sport a version of the 6502, but there was absolutely no requirement to know what was going on inside. I only went down the path of learning 8-bit computers and assembly so I could get a better grasp at programming fundamentals. Making the emulator has been massively fun and definitely addressed the fundamentals.
|
|
|
|
|
Or Z80? 8080? 8008?
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
That's going to be a big No.
|
|
|
|
|
I started out with Z80 and 6809 machine code, there were no assemblers available to me back then. I wrote my first code like this around 40 years ago which was a ROM extension for Basic to control sound and speech hardware. Thinking back and comparing to the likes of modern assemblers or VS I have no idea how I managed it!
|
|
|
|
|
Private Dobbs wrote: Thinking back and comparing to the likes of modern assemblers or VS I have no idea how I managed it!
Maybe you read Dr. Dobbs Journal? I just couldn't help notice that you are Private Dobbs. You wouldn't happen to be a doctor in your spare time, would you?
There was so little documentation back then. It's amazing that devs were able to do the things they did. Very cool story.
|
|
|
|
|
Alas not a doctor although at 18 I wanted to be one. However I am currently working on a medical app if that counts
|
|
|
|
|
When I wrote my first assembler program 25+years ago, I was so proud of being able to speak the computer's "native" language ! Like you could interact directly with its perception of things without the filters of the high level languages.
|
|
|
|
|
Rage wrote: When I wrote my first assembler program 25+years ago, I was so proud of being able to speak the computer's "native" language
Yeah I always remember Bill Gates quote about when they were controlling a PDP-8 or PDP-11 from his school. Then they were in high school and working with a large corporation and writing code for them. He said something like, "It was amazing that we were high school students and we were able to control this machine that was worth millions $$$ that very few adults could even understand and control." It's very true.
|
|
|
|
|
Strangely, x86/x64 is one of the few processors that I've used that I haven't written assembly for... Z80, 68000, VAX, ARM, various other embedded platforms, but never for any PC processors...
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Stuart Dootson wrote: Strangely, x86/x64 is one of the few processors that I've used that I haven't written assembly for..
That is interesting. I guess it makes sense too because x86/x64 are used in PCs and there are a whole host of other tools to use to develop on those platforms. Meanwhile those other ones you mention probably don't have as many dev tools. Interesting.
|
|
|
|
|
ld hl, 3c00h
l1: ld a, (hl)
xor a, 0BFh
ld (hl), a
inx hx
ld a, h
cmp 40h
jne l1
ret
My first assembler subroutine, in Z-80assembler, for the TRS-80. First written circa 1979 and reprinted from memory. Now the tricky part:
21 00 3C
76
EE BF
77
23
7C
FE 40
20 F5
C9
That's my best guess to the machine codes for that. (It steps through the monochrome graphics screen, inverting the bit, changing black->white, white->black on the image.)
UPDATE: I just googled it. The correct machine code would be:
21 00 3C
7E ; funny thing. I wrote 7E on the scrap paper I figured it out on, then wrote 76 here.
EE BF
77
23
7C
FE 40
20 F3 ; relative jump starts counting from the address of NEXT op code.
C9
Truth,
James
modified 10-Feb-21 10:40am.
|
|
|
|
|
|
Takes me back. In the '80s, if you wanted something fast, you did it in assembly language. MASM in those days. I wrote *a lot* of it. I knew this one company who wrote an entire accounting system in it, which was pretty impressive - very fast and utterly obsolete as soon as Windows 3.1 died. I love assembly language: there's a purity to it which you don't find anywhere else.
|
|
|
|