Commodore 128 Programmer's Reference Manual page 425

Hide thumbs Also See for 128:
Table of Contents

Advertisement

'
THE COMMODORE 128 OPERATING SYSTEM
415
\
|
' !
does not do that pertains to the Editor is I/O initialization, which is needed for IRQ's
(keyscan, VIC cursor blink, split screen modes), key lines, screen background
H
colors, etc. (see IOINIT). Because CINT updates Editor indirect vectors that are
J j
used during IRQ processing, you should disable IRQ's prior to calling it. CINT
utilizes the status byte INIT_STATUS ($A04) as follows:
P
$A04 bit 6 = 0 -> Full initialization.
) !
(set INIT-STATUS bit 6)
1 -» Partial initialization.
r->
(not key matrix pointers)
! j
(not program key definitions)
CINT is also an Editor jump table entry ($C000).
n
i
!
2. $FF84 IOINIT ;init I/O devices
PREPARATION:
Registers:
Memory:
Flags:
Calls:
RESULTS:
Registers:
Memory:
Flags:
EXAMPLE:
SEI
JSR $FF84
CLI
none
system map
none
none
.A used
.X used
.Y used
initialize I/O
none
initialize sy;
IOINIT is perhaps the major function of the Reset handler. It initializes both
CIA's (timers, keyboard, serial port, user port, cassette) and the 8502 port (key
board, cassette, VIC bank). It distinguishes a PAL system from an NTSC one and
sets PALCNT ($A03) if PAL. The VIC, SID and 8563 devices are initialized,
including the downloading of character definitions to 8563 display RAM (if neces
sary). The system 60Hz IRQ source, the VIC raster, is started (pending IRQs are
cleared). IOINIT utilizes the status byte INIT_STATUS ($A04) as follows:
$A04 bit 7 = 0 -* Full initialization.
(set INIT_STATUS bit 7)
= 1 -* Partial initialization.
(not 8563 character definitions)

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents