Copy Link
Add to Bookmark
Report
Commodore Trivia 11
(Note: some people noticed that there was no question $0AD in the original
post of the questions. It's a features.... :-) Actually, I think the
editor I am using ate it, but I had a backup, so the question is included
here, but no one got points for it.... Jim)
Here are the answers to Commodore Trivia Edition #11 for October, 1994
Q $0A0) In the mid 1980's, Commodore introduced RAM Expansion Units for the
Commodore 64, 64C, 128, and 128D. There were three of them. Give
their model numbers, and what was different among them.
A $0A0) The 1700 (128kB), the 1764 (256kB), and the 1750 (512kB). The
1700 and the 1750 were marketed for the 128, while the 1764 was
marketed from the 64 line.
Q $0A1) Some of the CIA integrated circuits used on the C64 and C128
computers have a hardware defect. What is the result of this
defect, and when does it occur? (May be more than one, but I need
only one)
A $0A1) The only one I have documented in front of me is the timer B
interrupt bug, which is explained in the "Toward 2400" article
by George Hug in Transactor 9.3. (1) However, I had many people
relate other bugs (2 and 3), which I haven't been able to test, so I
add them as possibilities. (I encourage readers to confirm/deny the
latter 2.)
1) If timer B of the 6526 CIA times out at about the same time as a
read of the interrupt register, the timer B flag may not be set at
all, and no interrupt will occur if timer B interrupts were
turned on.
2) When the hour on the TOD clock is 12, the AM/PM must be reversed
from its normal setting to set/reset the AM/PM flag.
3) The TOD clock sometimes generates double interrupts for alarm
trigger.
Q $0A2) Name the Commodore machine(s) on which a Intel 8088 was an OPTIONAL
coprocessor. (Hint, not the IBM clones)
A $0A2) I was looking for the B series computers, which contains the B
computers (B128, B256), as well as the 600 series and the 700
series. These computers could be fitted with an optional 8088
processor on a separate card. However, another correct answer is
the Amiga, which can have a 8088 attached via an expansion card or a
SideCar(tm) unit.
Q $0A3) On Commodore computers beside the Plus/4 series, there are three
frequencies used to record the data on the tape. Name the
frequencies used.
A $0A3) 1953.125Hz, 2840.909Hz, and 1488.095Hz. These correspond to
waveforms with periods: 512us, 352us, and 672us, respectively.
Q $0A4) Commodore Plus/4 series computers can not read any cassettes
recorded on other Commodore computers. Why? (Hint: It has
nothing to do with the nonstandard connecotr on the Plus/4)
A $0A4) The tones recorded on the Plus/4-C16 are exactly one-half the
frequencies shown above. This suggests to many that the Plus/4
and C16 were supposed to run at twice its present frequency,
but were downgraded at the last-minute, and the code to generate
the tones was not updated to reflect the change. This is just
heresay, so you decide for yourself.
Q $0A5) During power-up, the Commodore 64 checks to see if it running
in PAL-land or NTSC-land. How does it determine its location?
A $0A5) It sets the raster compare interrupt to go off at scan line 311.
If the interrupt occurs, we are on a PAL system, since NTSC will
never get to line 311 (NTSC only has 262.5 lines per frame, every
other frame shifted down a bit to create 525 lines).
Q $0A6) What is the 65XX ML opcode for BRK?
A $0A6) $00, or 00
Q $0A7) On the 65XX CPU, what gets pushed onto the stack when an interrupt
occurs?
A $0A7) The program counter gets saved high byte first, then the processor
status flags get saved.
Q $0A8) Speaking of the stack, where is the stack located in the 65XX address
map?
A $0A8) $0100 to $01FF
Q $0A9) On the 65XX CPU line, it is possible to set and clear a number of
processor status flags. Examples include SEC and CLC to set and
clear the carry flag. What flag has a clear opcode, but no set
opcode?
A $0A9) The overflow flag: V. However, the V flag can be set via an external
pin on some members of the 65XX line. The 1541 uses this as an
ingenious synchronization tool.
Q $0AA) When saving a text file to tape, the computer records 192 bytes of
data, an inter-record gap, and then the same 192 bytes of data
again. How wide is this inter-record gap, and why is it there?
A $0AA) Some terminology: "inter" means "between". Most everyone knows
that a tape block is recorded twice on the tape, but Commodore
considers the two copies and the gap between them a single
"record". Thus, this question is referring to the gap in between
two dissimilar records. With that in mind,
the interrecord gap is nominally 2 seconds long, (or 223.2 byte
lengths, although the gap contains no data). It is there to allow
the tape motors to get up to speed before the next data comes under
the read/write head. The tape motors may need to stop between
records if the program is not requesting any more data from the
tape data file at this time. If the program subsequently asks
for data from the tape, the drive must get up to speed before the
read can occur. Note: on the first version of PET BASIC, the
gap was too small, so programmers had problems retrieving data
files.
For completeness, the "intra-record" gap (The one between the two
copies of the data) consists of 50+ short pulses, each of which is
352us in length, giving a timing of .0176s+. This time was used to
copy important data to safe locations, reset pointers, and do error
logging. The entire "record" is recorded in 5.7 seconds.
Q $0AB) On an unexpanded VIC-20, where does the screen memory start?
A $0AB) $1e00, or 7680
Q $0AC) In Commodore BASIC, what is the abbreviated form of the "Load"
command?
A $0AC) lO (L SHIFT-O)
Q $0AD) In Commodore BASIC, what is the abbreviated form of the "List"
command?
A $0AD) lI (L SHIFT-I)
Q $0AE) On the Commodore 64, there is section of 4 kilobytes of RAM that
cannot be used for BASIC programs. It is the favorite hiding
places for many ML programs, however. What is its address in
memory?
A $0AE) $c000, or 49152
Q $0AF) What is stored at locations $A004-$A00B, and why is it strange?
A $0AF) The text "CBMBASIC" is stored there. It is strange because this
text is not referenced by any routine. It can also be called
strange because the code is Microsoft's. Doesn't it make you wonder?
End of Commodore Trivia Edition #11!
Jim Brain
brain@mail.msen.com
2306B Hartland Road
Hartland, MI 48353
(810) 737-7300 x8528
--
Jim Brain, Embedded Systems Designer, Brain Innovations.
brain@msen.com
Dabbling in VR, Old Commodore Computers, and Good Times!
"The above views DO reflect my employer, since I am my employer" - Jim Brain