Skip to content

Commit

Permalink
Created a target and a library for the Commander X16 prototype computer.
Browse files Browse the repository at this point in the history
  • Loading branch information
greg-king5 committed Sep 27, 2019
1 parent 0896dee commit 18afc7c
Show file tree
Hide file tree
Showing 49 changed files with 2,440 additions and 59 deletions.
36 changes: 25 additions & 11 deletions asminc/cbm_kernal.inc
Original file line number Diff line number Diff line change
@@ -1,38 +1,53 @@
;
; Olli Savia <ops@iki.fi>
;
; Commodore kernal functions
; Commodore Kernal functions
;

.if .def(__CX16__)
; CX16 extended jump table
GETJOY := $FF06
.endif

.if .def(__C128__)
; C128 Extended jump table
; C128 extended jump table
C64MODE := $FF4D
SWAPPER := $FF5F
SETBNK := $FF68
.endif

.if .def(__C64__) || .def(__C128__) || .def(__C16__)
.if .def(__C128__) || .def(__CX16__)
; Extended jump table
CLSALL := $FF4A
SWAPPER := $FF5F
JSRFAR := $FF6E
INDFET := $FF74
INDSTA := $FF77
INDCMP := $FF7A
PRIMM := $FF7D
.endif

.if .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__)
CINT := $FF81
IOINIT := $FF84
RAMTAS := $FF87
.elseif .def(__VIC20__)
CINT := $E518 ; No entries are in the kernal jump table of the Vic20 for these three (3) functions.
CINT := $E518 ; No entries are in the Kernal jump table of the VIC-20 for these three (3) functions.
IOINIT := $FDF9 ; The entries for these functions have been set to point directly to the functions
RAMTAS := $FD8D ; in the kernal to maintain compatibility with the other Commodore platforms.
RAMTAS := $FD8D ; in the Kernal, to maintain compatibility with the other Commodore platforms.
.elseif .def(__CBM510__) || .def(__CBM610__)
IOINIT := $FF7B
CINT := $FF7E
.endif

.if .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__)
.if .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__)
RESTOR := $FF8A
VECTOR := $FF8D
.elseif .def(__CBM510__) || .def(__CBM610__)
VECTOR := $FF84
RESTOR := $FF87
.endif

.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__)
.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__)
SETMSG := $FF90
SECOND := $FF93
TKSA := $FF96
Expand Down Expand Up @@ -64,7 +79,7 @@ CHRIN := $FFCF
BSOUT := $FFD2
CHROUT := $FFD2

.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__)
.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__)
LOAD := $FFD5
SAVE := $FFD8
SETTIM := $FFDB
Expand All @@ -77,7 +92,7 @@ GETIN := $FFE4
CLALL := $FFE7
UDTIM := $FFEA

.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__)
.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__)
SCREEN := $FFED
PLOT := $FFF0
IOBASE := $FFF3
Expand All @@ -102,7 +117,6 @@ UDTIM := $FFEA
CURS_SET := $CD57
CURS_ON := $CD6F
CURS_OFF := $CD9F
INDFET := $FF74
.elseif .def(__C16__)
CLRSCR := $D88B
KBDREAD := $D8C1
Expand Down

1 comment on commit 18afc7c

@tschak909
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @greg-king5 BIG-HUG !!!!

Please sign in to comment.