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