EasyManua.ls Logo

Commodore 1541-II - Chapter 9: Machine Language Programs; Disk-Related Kernafl Subroutines

Commodore 1541-II
104 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
CHAPTER
9
MACHINE
LANGUAGE
PROGRAMS
Here
is
a
list
of
disk-related
Kernal
ROM
subroutines
and
a
practical
example
of
their
use
in
a
program
which
reads
a
sequential
file
into
memory
from
disk.
Note
that
most
require
advance
setup
of
one
or
more
processor
registers
or
memory
locations,
and
all
are
"â– called
with
the
assembly
language
JSR
command.
For
a
more
complete
description
as
to
what
each
routine
does
and
how
parameters
are
set
for
each
routine,
see
the
Programmer's
Reference
Guide
for
your
specific
computer.
DISK-RELATED
KERNAL
SUBROUTINES
Label
Address
Function
SETLFS
SETNAM
OPEN
CLOSE
CHKIN
CHKOUT
CLRCHN
CHRIN
CHROUT
START
NEXT
END
=
=
=
=
=
=
=
=
LDA
LDX
LDY
JSR
LDA
LDX
LDY
JSR
JSR
LDX
JSR
JSR
BEQ
JSR
JMP
LDA
JSR
JSR
RTS
$FFBA
$FFBD
$FFC0
$FFC3
$FFC6
$FFC9
$FFCC
$FFCF
$FFD2
#4
#<FNADR
#>FNADR
SETNAM
#3
#8
#0
SETLFS
OPEN
#3
CHKIN
CHRIN
END
CHROUT
NEXT
#3
CLOSE
CLRCHN
;SET
LOGICAL,
FIRST
&
SECOND
ADDRESSES
;SET
LENGTH
&
ADDRESS
OF
FILENAME
;OPEN
LOGICAL
FILE
;CLOSE
LOGICAL
FILE
;SELECT
CHANNEL
FOR
INPUT
;SELECT
CHANNEL
FOR
OUTPUT
;CLEAR
ALL
CHANNELS
&
RESTORE
DEFAULT
I/O
;GET
BYTE
FROM
CURRENT
INPUT
DEVICE
;OUTPUT
BYTE
TO
CURRENT
OUTPUT
DEVICE
;SET
LENGTH
&
ADDRESS
;OF
FILE
NAME,
LOW
;&
HIGH
BYTES
;FOR
NAME
SETTER
;SET
FILE
NUMBER,
;DISK
DEVICE
NUMBER,
;AND
SECONDARY
ADDRESS
;AND
SET
THEM
;OPEN
3,8,0,t4TEST"
;SELECT
FILE
3
FOR
INPUT
;GET
NEXT
BYTE
FROM
FILE
;UNTIL
FINISH
OR
FAIL
;OUTPUT
BYTE
TO
SCREEN
;AND
LOOP
BACK
FOR
MORE
;WHEN
DONE
;CLOSE
FILE
;RESTORE
DEFAULT
I/O
;BACK
TO
BASIC
FNADR
.BYT
"TEST"
;STORE
FILE
NAME
HERE
80

Table of Contents

Related product manuals