Hi Grant,
>One 8bit ASCII and another forced to 7bit. This one attached has
>been forced to 7bit ASCII. Both files WILL load into the Altair without
>issue.
The tapes are comprised of recorded ascii data (s-record format) ...so if
you are just reading the data as is (vs. loading the data via a s-record
loader) then you should probably get the same thing regardless if you
use 7 or 8 bits.
>It seems random which bytes had the 8th bit set and which
>didn't.
I assume that you are referring to the data in memory as a result of the
ROM tape loader execution? If so, you will note that Basic has bit 8 set
on many ascii text elements within the source. Microsoft Basic used the
high bit set in the keyword tables for the code that searched the keyword
tables. They also often used the high bit to determine the last character
of message strings.
> Also, there is what appears to be garbage after the S0 record. I
>have no idea why. The tape has a bunch of 7Fs, then S0 and a bunch of
>garbage, and then 00s. At the end there is some garbage too. The KCACR
>ROM appears to ignore it.
It appears that the tape is similar to the MITS Absolute Tape Load format.
I'm guessing that your format is as follows:
First ...
Pre-leader - comprised of a series of bytes that represent the length of
the tape checksum loader. For example, a series of 7F bytes would
mean that the checksum loader is 127 bytes long.
Second...
S-record header record (S0)
Third...
Checksum loader - intended for those who do not have the kacr ROM. It
should be 127 bytes in in your example.
Forth...
Tape leader - a series of nulls
Forth...
The actual code. There may be some garbage bytes appended, depending
on how MITS dumped the tape (specifically, how long the address range
specified to dump was).
Fifth...
Trailer - a series of nulls
This is similar to the typical format used for MITS tapes (both paper
and cassette based).
Scott
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
Posted for comment, started off list:
I have about 3-4 recordings of the tape. As well as a "reproduction" of
the tape.
I lifted the "transmit" leg on the serial chip so that it wasn't in the
socket. Then I put a jumper from the receive pin to the transmit
hole. While playing the tape into the Altair I recorded the remodulated
data into the computer and made a note if there were no checksum
errors. As the tape was being demodulated the KCACR was remodulating the
data at the same time.
I have never been able to get a computer recorded file to load into the
Altair. This may be caused from a lack of audio amplitude? I was
surprised that the KCS.EXE utility only found 3 errors in the cassette tape
wav file but found 11,000 errors with the remodulated WAV file. There was
a slight DC offset and a background hum (not 60hz)
I'm STILL trying to figure out why I have a few 13 minute long and a few 10
minute long recordings of the SAME TAPE!!!!
Once I am through with this process I will make a tutorial. I'll also
offer to recover other people's tapes. I LOVE time capsules! : )
Grant
>If you haven't done so already, back up your tapes to .wav files right
>away!
>
>Just plug your cassette player into your PC and do some high quality
>mono recordings (8bits @ 22050 samples/sec). Avoid MP3 because of lossy
>compression.
>
>Look here: http://www.netbay.com.au/~dxforth/ if you want to
>post-process the .wav files, but it's even easier to just feed the audio
>back and forth via your sound card.
>
>Once you have the digital data, you can always recreate the tapes but if
>you lose the tapes, that's it.
>
>Jack
Happy New Year!
I'm back at it again - I plan on doing better this time. (I've fixed
the specific double delete bug that bit me last time, improved tracing
quite a bit, and added a lot of consistency checking code.)
Just like last time, all you need to do is telnet to 24.159.203.149,
port 2301. Once again, that's my Linux box, but today it is forwarding
port 2301 to my PCjr. The commands are slightly enhanced from the last
test, but it isn't anything highly interactive.
Up to 9 people can connect simultaneously. We didn't get more than 2 or
3 simultaneous connections last time, so I'm probably overly optimistic.
Some of you noted from last time that there is no character echoing or
line editing. Telnet users on Unix machines will probably have local
line editing, which makes things a wee bit nicer. The standard Windows
telnet client doesn't do that by default, so you will type but not see
your characters. That's a project for a different day.
Here is a picture of the machine you are connecting to, complete with
the Western Digital 8003 Ethernet card grafted onto the side:
http://brutman.com/PCjr_WD_small.jpg
And lastly, if you remember, type in your OS and machine type as a
command. It will complain about it being an invalid command, but I'll
see it in the log and I'll have a better idea of what I'm testing against.
Thanks in advance,
Mike
I thought I would post this for the search engines to latch a hold onto.
It appears that my 20k post including the Cassette Basic source was
killed. If you want the authentic S record listing of MITS Altair 680
KCACR Basic then send me an e-mail... If you mentioned that you wanted it,
please e-mail me off list again. I may forget! I am in the process of
setting up a web page on the 680, so I'll put the information there when
I'm ready.
If someone is interested in helping me "figure out" what is on the leader
and footer of the tape, please request the original files. I have
two. One 8bit ASCII and another forced to 7bit. This one attached has
been forced to 7bit ASCII. Both files WILL load into the Altair without
issue. It seems random which bytes had the 8th bit set and which
didn't. Also, there is what appears to be garbage after the S0 record. I
have no idea why. The tape has a bunch of 7Fs, then S0 and a bunch of
garbage, and then 00s. At the end there is some garbage too. The KCACR
ROM appears to ignore it.
I've found this file reliably loads at 9600bps. It takes 21 seconds to
load into a 680.
.J 0000
MEMORY SIZE?
TERMINAL WIDTH? 80
WANT SIN-COS-TAN-ATN? YES
9604 BYTES FREE
MITS ALTAIR 680 BASIC VERSION 1.1 REV 3.2
--KCACR--
COPYRIGHT 1976 BY MITS INC.
OK
------------------------------------------
S10400F3FF09
S11300000D7600F37E1A4F7E034A00004838002C18
S113001000000000000000000000000000000000DC
S113002000000000000000000000000000000000CC
S113003000000000000000000000000000000000BC
S113004000000000000000000000000000000000AC
S1130050000000000000000000000000000000009C
S1130060000000000000000000000000000000008C
S1130070000000000000000000000000000000007C
S1130080000000000000000000000000000000006C
S1130090000000000000000000000000000000005C
S11300A0000000000000000000000000000000004C
S11300B00000000000000000000000000000007CC0
S11300C000C926037C00C8B6EA60813A240881206E
S11300D027ED803080D039FFEA607E03D500000030
S113010000000000000000000000000000804FC755
S113011052007E1A4F0CF10E6015E6165A16000DA9
S1130120710E410E6C18521932142818BE19681930
S11301306E19B419F811BC10D50F1D117910F510F2
...
Blah hlah blah, ask me for more...
Yeah, no kidding--someone game me a Mac 6100/60. Not very exciting,
but I've upgraded the memory to 40 MB and added a 4GB hard disk from
parts in my hellbox.
So, does anyone have any first-hand experience with Linux on one of
these critters? Is it worth the installation trouble?
Cheers,
Chuck
After a bit of a ponder this should be about as fast as you can get
without putting multiple statements on one line ..
1 GOTO 5
2 WAIT A,D,D
3 POKE B, PEEK(C)
4 GOTO 2
5 A=61456
6 B=61441
7 C=61457
8 D=1
9 GOTO 2
.. if multiple statements per line are allowed then this should be
faster ..
1 A=61456:B=61441:C=61457:D=1
2 WAIT A,D,D:POKE B,PEEK(C):GOTO 2
Lee.
>> Does it pop up saying the disk needs to be initialized? Are you sure
>> it's
>> HFS?
I'd first give Disk First Aid or some similar program a go at it. Start
up DFA first and then insert the disk and scan it. Try covering the HD
hole, also- 800k Macs could format 1.44s at 800k which could confuse a
newer machine. You might be sunk, though, if that's the case, as some
800k drives don't magnetize the disk strongly enough and it is
unreadable after several years.
I have at least a couple I need to get rid of. Too
much stuff. No keyboards or mice (they take the
regular ps/2 type though), no OS, probably busted
drive door hinges, somewhat scuffed up. They weigh
about 40 lbs, so keep that in mind. Free otherwise.
E-mail me offlist please.
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com