• Please review our updated Terms and Rules here

Programming Altair confusion

For bytes, just group the first 8 switches as a byte in octal 377 is the largest byte.

For addressing you need to know if the address is pure octal or split octal.
If pure octal you use all the switches as a longer octal number, all as groups of 3 for each digit, right to left.
If it is split octal addressing is 2 groups of 8 switches.
I hope this makes sense.
Split octal is used on machines that usually only have 8 switches or byte entry, like Heath kit computers that only enter 8 bit numbers at a time.
A listing for an IMSAI or Altair would normally be in full octal.
If any of the addresses end in 7XX it is not split octal.
If all the addresses end in 0XX, 1XX, 2XX or 3XX then you can't tell, unless all the left digits are 0. If all the left digits are 0s, it doesn't make any difference.
Dwight
 

Off topic, really, and... I mean, I don't want to criticize too much here, but I've listened to that like three times, and while it's definitely "music" I just can't make The Beatles' "The Fool On The Hill" out of that at all. ;)

Maybe I need to suck up typing that into a cross-assembler and trying it on my trash 80 to see if "Daisy" is a little more comprehensible.
 
Off topic, really, and... I mean, I don't want to criticize too much here, but I've listened to that like three times, and while it's definitely "music" I just can't make The Beatles' "The Fool On The Hill" out of that at all. ;)

Maybe I need to suck up typing that into a cross-assembler and trying it on my trash 80 to see if "Daisy" is a little more comprehensible.
No I've listened to it several times from various videos and I can make out a small bit of it but the rest doesn't sound like FOTH at all to me either. It was an odd choice for a first music demo, but I think I read Steve Dompier just happened to have the sheet music for it lying around at home or something.
 
For bytes, just group the first 8 switches as a byte in octal 377 is the largest byte.

For addressing you need to know if the address is pure octal or split octal.
If pure octal you use all the switches as a longer octal number, all as groups of 3 for each digit, right to left.
If it is split octal addressing is 2 groups of 8 switches.
I hope this makes sense.
Split octal is used on machines that usually only have 8 switches or byte entry, like Heath kit computers that only enter 8 bit numbers at a time.
A listing for an IMSAI or Altair would normally be in full octal.
If any of the addresses end in 7XX it is not split octal.
If all the addresses end in 0XX, 1XX, 2XX or 3XX then you can't tell, unless all the left digits are 0. If all the left digits are 0s, it doesn't make any difference.
Dwight
Thank you. The logic of it sort of gets through to me, I just find it confusing sometimes. I'm trying to understand from a historical perspective why octal was chosen for the Altair, and the two answers I think I have are a) it's what Ed Roberts was familiar with and b) it cut down on the complexity of the front panel a bit. As far as octal to binary on a computer goes it's one of those things I can understand in my head but if I try to explain it to myself or anyone else it stops making sense.
 
No I've listened to it several times from various videos and I can make out a small bit of it but the rest doesn't sound like FOTH at all to me either. It was an odd choice for a first music demo, but I think I read Steve Dompier just happened to have the sheet music for it lying around at home or something.

Honestly, staying away from anything from "Magical Mystery Tour" probably would have been advisable. Beatles songs of this era don't translate well to a single voice, and FOTH is also *really* depends on getting the tempo right. :p
 
Thank you. The logic of it sort of gets through to me, I just find it confusing sometimes. I'm trying to understand from a historical perspective why octal was chosen for the Altair, and the two answers I think I have are a) it's what Ed Roberts was familiar with and b) it cut down on the complexity of the front panel a bit. As far as octal to binary on a computer goes it's one of those things I can understand in my head but if I try to explain it to myself or anyone else it stops making sense.
Octal on the front panel. Did make it easier to code. go look at that pdf book i linked to.
when your going through it it starts to make sense. hex starts to get confusing, you only have to deal with 0 to 7 with hex you start doing too much math in your head with A-F.
its easier to see 3 switches on the panel verse the four and its faster to input into the panel.
i'm from your generation where HEX was what i know.. i had the same feeling as you why did they go with octal. once i started writing programs and converting to octal for the op codes
i was sold it does work much faster.
 
One of the niceties of the IMSAI 8080--you could configure the front panel switches in either 3 or 4 bit groups. (or 2 bit if you are addicted to quaternary. :)
 
Just for laughs, I noodled together a way to copy the table-ed listing from the page into a text file, extract the hex code column, and paste it into this online 8080 simulator to verify that the code looked good and that I could save myself having to retype it. (The idea of actually toggling this all in with the front panel... ugh.)

Code:
0000: 212000 LD HL,20                                                                                                                                        
0003: 7e     LD A,(HL)                                                                                                                                       
0004: feff   CP ff                                                                                                                                           
0006: ca0000 JP Z,0                                                                                                                                          
0009: 1620   LD D,20                                                                                                                                         
000b: 05     DEC B                                                                                                                                           
000c: c21000 JP NZ,10                                                                                                                                        
000f: 46     LD B,(HL)                                                                                                                                       
0010: 0d     DEC C                                                                                                                                           
0011: c20b00 JP NZ,b                                                                                                                                         
0014: 15     DEC D                                                                                                                                           
0015: c20b00 JP NZ,b                                                                                                                                         
0018: 2c     INC L                                                                                                                                           
0019: c30300 JP 3                                                                                                                                            
001c: 00     NOP                                                                                                                                             
001d: 00     NOP
001e: 00     NOP                                                                                                                                             
001f: 00     NOP
(Everything from 0020 up is the music data.) It's a little mind blowing how there's no I/O of any sort in this, it's just buzzing through nested loops.

Now to relocate it to above 4000H so I can stuff it into my TRS-80 and see if I can hear it. Do I even have a portable AM radio anymore...?

Oh, if anyone wants it... absolutely no guarantee it works, here's the Altair version in the form of an Intel hex dump file:

:d80000002120007efeffca0000162005c21000460dc20b0015c20b002cc3030000000000454555403933333339332d2b2b2d3933262626393326262b2226263339332b2b332b39333339332626262b222b26262b2d2b393640393940393636394040403936303036393636302b2626262624262b2b2b2b2b020202ff1c1c1c2222222b2b2b393939332d2b33332b3939393939392626261c1c1c2222222b2b2b332d2b2626222626262626222022261c1c22262b2b2b2b2622222b33332b3339393939392b2b222626392b2b222622201c222b2626392b2b2b2b02ff
 
I talked to some people that would key in the tape loader and did it so often they just memorized the switch sequence.

if you get fluid in knowing octal with the switch positions and you know 8080 opcodes well then you can key things in quickly.

if it was all you had to work with back in the day because you didn't have a rom or a diskdrive for storage you figured it out.

try going back from windows 11 today and use windows 3.0 you will wonder how you did it.

of course Deramps channel and website

 
I talked to some people that would key in the tape loader and did it so often they just memorized the switch sequence.

if you get fluid in knowing octal with the switch positions and you know 8080 opcodes well then you can key things in quickly.

if it was all you had to work with back in the day because you didn't have a rom or a diskdrive for storage you figured it out.

try going back from windows 11 today and use windows 3.0 you will wonder how you did it.

of course Deramps channel and website

This is what happened to me as I learned binary switches on my ELF. But that machine has these really tall switches that are smooth in operation. The switches on the Altair are stubby and can bind sometimes.
 
Yup. Got the "Special Deal" kit with CPU, SIO, 2x4KB DRAM boards for $1000 even. Pulled a couple of all-nighters and assembled it over a weekend. Still remember that budget junk white wire...
 
I have a baggie of unused junk white wire.. heh. Don't know quite what to do with it.

The SIO board confuses me - it needed to have that 'daughterboard' attached to it to work with a teletype right? I'd love to get mine going with my Model 33.
 
You can purchase RS232-to-current-loop adapters (I think Black Box sells them) or make your own.
As far as the white wire goes--too small for a clothesline, probably wouldn't be strong enough for shoelaces. I don't know...
 
Back
Top