Commodore Trivia
Home  Weblog  Research Kitchen  Contact 
All You Ever Wanted To Know About Commodore Main Menu
Home > Trivia #29A

Resources
C64 Chronology
  A comprehensive chronology of the Commodore 64
Zzap! 64
  Fan site for the classic C64 mag
Lemon 64
  Awesome 64 games site
CCS64
  A C64 on your desktop
RKO C64 Remixes
  Amazing site of C64 SID remixes
   

Who wrote this stuff?
This trivia was originally written by Jim Brain as part of the now long defunct C= Hacking Magazine, but happily Jim has kindly agreed to let me reproduce it in HTML-ized format for retro computing fans everywhere.

If you are interested in seeing the Commodore Trivia digests in their original form, take a look at this website.

For those who are interested, these pages were generated from the original text files using Perl and Velocity (and a nice template originally found here)

 
TRIVIA 29A

$1C0)
	What are the two configurations for the LORAM, HIRAM, GAME, and EXROM
        pins that will allow the use of a full 64kB of RAM in the C64?
    	

	There are actually 4 configurations, in two categories:
        LORAM   0   0   (X means either 1 or 0)
        HIRAM   0   0
        GAME    1   X
        EXROM   X   0
		

Top
$1C1)
	What is the first thing that the C64 (and VIC) KERNAL does upon
        powerup?
    	

	The first thing each does is reset the stack pointer to $ff.
     

Top
$1C2)
	What KERNAL routine is used to set a DOS channel to input?  
    	

	CHKIN ($ffc6)
     

Top
$1C3)
	What KERNAL routine is used to set a DOS channel to output?  
    	

	CHKOUT ($ffc9)
     

Top
$1C4)
	Before calling the routines in $1C2 and $1C3, what register must
        you load?
    	

	You must load .X with the logical file number.
     

Top
$1C5)
	What 3 devices can the KERNAL NOT load from?
    	

	keyboard (0), RS-232 (2), or screen (3).  The first and last are
        somewhat obvious, but allowing RS-232 loads would have made
        loading from a remote machine possible.  Incidentally, you can't
        save to any of these devices, either.
     

Top
$1C6)
	In the Commodore KERNAL, there are "high" and "low" level routines.
        To which class of routines does "SECOND" belong?
    	

	low.  It is used to specify the secondary address, as the '7' in
        open 4,4,7.
     

Top
$1C7)
	If a programmer calls the KERNAL routine "STOP" and the RUN/STOP
        key is NOT pressed, what is returned in the .A register?
    	

	.A will contain a byte representing the last row of the keyboard
        scan.
     

Top
$1C8)
	The Commodore KERNAL routines are all accessed via a jump table.
        What routine is used to change the values in the KERNAL jump table?
    	

	The appropriately named VECTOR ($ff8d) call, which few programmers
        actually use.
     

Top
$1C9)
	A call is made to a KERNAL routine, the call returns with the C
        bit set and the .A register holds $02.  What error does this 
        indicate?
    	

	"File already open"
     	  

Top
$1CA)
	If a call to READST is made, and a $40 is returned in .A, what 
        does this indicate?
    	

	End of File.
     	     

Top
$1CB)
	What routine can be called to determine the physical format of the
        Commodore 64 screen in characters?
    	

	The also appropriately named SCREEN ($ffed) call.
     

Top
$1CC)
	The Commodore 64 starts a non-destructive RAM test at what location?
    	

	$0300.
     

Top
$1CD)
	Which way does the RAM test proceed: up or down?
    	

	up.
     

Top
$1CE)
	Which KERNAL routine is used ONLY in conjunction with a Commodore
        IEEE card? 
    	   

	SETTMO ($ffa2), which sets the IEEE bus card timeout flag.  I infer
        that Commodore thought many people would use the IEEE interface.
        (Anyone know any more about this?)
     

Top
$1CF)
	Many hybrid BASIC/ML programs use SYS to transfer control from BASIC
        to ML.  However, a few use USR(X).  When using the latter function,
        where does BASIC fetch the ML routine's starting address from?

	785 and 786, in classic LO:HI format.
     
The information in this between the lines marked by (BEGIN) and (END)
is copyright 1996 by Jim Brain.  Provided that the information
between the (BEGIN) and (END) lines is not changed except to correct
typographical errors, the so marked copyrighted information may be
reproduced in its entirety on other networks or in other mediums.  For 
more information about using this file, please contact the address 
shown below.
Jim Brain
j.brain@ieee.org
10710 Bruhn Avenue
Bennington, NE  68007
(402) 431-7754
--------Commodore Trivia Edition #29 Questions and Answers (END)---------
				   


Top


This site 2005 The Research Kitchen and Jim Brain.
Page generated: Sat Oct 14 14:06:37 BST 2006