Copy Link
Add to Bookmark
Report
Commodore Trivia 12
Here are the answers to Commodore Trivia Edition #12 for November, 1994
Q $0B0) What will happen if you type ?""+-0 into the CBM BASIC interpreter
on the PET series, the 64 series, or the 128 series?
A $0B0) Basically, the BASIC interpreter executes a BRK instruction. On the
C64, the system vectors through $316-$317 (BRK vector) and does a warm
start. On the C128 and PETs with Monitors, the system dumps into
the internal machine language monitor. If the machine under use
did not do something with the BRK vector, the machine would hang.
Now, this is NOT normal behavior. The system should report an
error, not execute a BRK.
Q $0B1) In the first CBM 64 units, what color was the screen color RAM
changed to when you cleared the screen?
A $0B1) The screen color RAM was changed to value 1 when the screen was
cleared. Thus, when a byte was poked into screen RAM, the resulting
character was white on the screen. The white contrasted nicely
with the normal blue background.
Q $0B2) Why was it changed in later versions of the 64?
A $0B2) Commodore found that this practice sometimes caused "light flashes"
during screen scrolls. I was going to leave this for another time,
but ... The change was to make the color RAM equal to background
color register #0. Well, this got rid of the "light flashes", but
then poking values to screen RAM caused invisible characters, since
the foreground color of the character was the same as the background
color of the screen. Oh well....
Q $0B3) What is "special" about the text that displays the "illegal quantity
error" in CBM BASIC?
A $0B3) The text is actually "?ILLEGAL QUANTITY ERROR". Notice the two
spaces between "QUANTITY" and "ERROR". The current theory is that
" ERROR" was a separate string with the space prepended, to save
memory (since that word occurs at end of error messages. Someone
then messed up the string ?ILLEGAL QUANTITY " by inserting a redundant
space. You decide.
Q $0B4) On what Commodore machine was the operating system OS/9 available?
A $0B4) Since OS/9 was a real-time operating system for the 6809
microprocessor, it was available on only one Commodore machine, which
had two different names: The Commodore SuperPET. The machine was
sold as the "MMF (Micro MainFrame) 9000 in Germany, and its model
number was SP9000.
Q $0B5) Which Commodore machine(s) does not have a user port?
A $0B5) The Commodore C16. Commodore decided to cut out telecommunications,
and thus designed the user port out of the computer, as the modem is
the only use Commodore ever made of the user port.
Q $0B6) How many pins are there in a Commodore Serial Connector?
A $0B6) 6.
Q $0B7) There are 13 addressing modes available on the 6502. Name them.
A $0B7) No# Name Description
--- ------------ -----------
01) accumulator asl a
02) immediate lda #$00
03) zero page lda $00
04) zero page,X lda $00,X
05) zero page,Y lda $00,Y
06) absolute lda $1000
07) absolute,X lda $1000,X
08) absolute,Y lda $1000,Y
09) implied clc
10) relative bne
11) (indirect,X) lda ($00,X)
12) (indirect),Y lda ($00),Y
13) (absolute indirect) jmp ($1000)
Q $0B8) If you were to put one large sequential file onto an 8050 disk drive,
how big could that file be?
A $0B8) According to the 8050 User Manual, a sequential file could be
521208 bytes in size.
Q $0B9) How many characters can be present in a standard Commodore DOS
filename?
A $0B9) 16 characters.
Q $0BA) How many pins does a 6502 IC have on it?
A $0BA) 40 pins.
Q $0BB) How many pins does the standard IEEE-488 connector have on it?
A $0BB) 24 pins.
Q $0BC) On the IEEE-488 bus, what does the acronym for pin 7, NRFD, stand for?
A $0BC) Not Ready For Data.
Q $0BD) On the NMOS 6502, what is the ML opcode for SED, and what does this
opcode do?
A $0BD) $f8, SEt Decimal mode. Sets the D flag in the status flags byte.
Although used rarely, this opcode switches on Binary Coded Decimal
mode. In BCD mode, the byte $10 is treated as 10, not 16. The add
and subtract instructions are the only ones affected by this mode.
For example, in this mode, adding the byte $15 (21) to the byte $25
(37) yields $40 (64) not $3a (58). emember that, in this mode,
$40 = 40, not 64.
Q $0BE) Assuming a PET computer and a non-PET computer have access to a
common disk drive or tape drive, there are two ways to load a PET
BASIC program on the non PET CBM computer. Name them.
A $0BE) Most differing series of Commodore computers had different places
for the start of BASIC programs. For instance, on the C64, $0801
(2049) is the start of BASIC memory, but most PET computers start
BASIC memory at $0401 (1025). This wouldn't matter, except that
BASIC programs are stored on tape and disk with the start address,
and the line links ina BASIC program have absolute addresses in them.
To fix these problems, the Commodore VIC-20 and newer computers came
out with a "relocatable load". So, here are the two choices:
1) simply load the program relocatable, i.e "name",8 or "name",1.
This would load the program in at start of BASIC memory and
refigure the line links.
2) Redefine start of BASIC memory on non-PET machine. A couple
of pokes to relevant BASCI pointer, and the start of BASIC
was moved.
Q $0BF) Only one of the ways detailed in $0BE works the other way around.
Which one?
A $0BF) Since the earlier PET computers did not have a "relocatable load",
the only way to load a program from, say, a C64 into an 8032 was to
use option #2 above and move the start of BASIC memory to $0801
(1025).
End of Commodore Trivia Edition #12!
Jim Brain
brain@mail.msen.com
602 North Lemen (New address)
Fenton, MI 48430
(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