From 5c25059ae3e379888f9980d41a4e80ca8135764f Mon Sep 17 00:00:00 2001 From: Matthew Pomes Date: Sun, 12 Apr 2026 14:39:50 -0500 Subject: [PATCH] Add cc65 artifacts to repo for now --- README.md | 5 + build.rs | 21 +- cc65/asminc/_file.inc | 27 + cc65/asminc/_heap.inc | 35 + cc65/asminc/accelerator.inc | 80 ++ cc65/asminc/agat.inc | 39 + cc65/asminc/apple2.inc | 95 ++ cc65/asminc/apple2.mac | 54 ++ cc65/asminc/ascii_charmap.inc | 287 ++++++ cc65/asminc/atari.inc | 1169 +++++++++++++++++++++++++ cc65/asminc/atari.mac | 65 ++ cc65/asminc/atari2600.inc | 7 + cc65/asminc/atari2600_riot.inc | 20 + cc65/asminc/atari2600_tia.inc | 69 ++ cc65/asminc/atari5200.inc | 133 +++ cc65/asminc/atari7800.inc | 14 + cc65/asminc/atari7800_maria.inc | 39 + cc65/asminc/atari7800_riot.inc | 20 + cc65/asminc/atari7800_tia.inc | 69 ++ cc65/asminc/atari_antic.inc | 95 ++ cc65/asminc/atari_atascii_charmap.inc | 301 +++++++ cc65/asminc/atari_gtia.inc | 119 +++ cc65/asminc/atari_pokey.inc | 43 + cc65/asminc/atari_screen_charmap.inc | 303 +++++++ cc65/asminc/atmos.inc | 117 +++ cc65/asminc/c128.inc | 224 +++++ cc65/asminc/c16.inc | 9 + cc65/asminc/c64.inc | 219 +++++ cc65/asminc/c65.inc | 239 +++++ cc65/asminc/cbm.mac | 56 ++ cc65/asminc/cbm510.inc | 200 +++++ cc65/asminc/cbm610.inc | 121 +++ cc65/asminc/cbm_filetype.inc | 34 + cc65/asminc/cbm_kernal.inc | 248 ++++++ cc65/asminc/cbm_petscii_charmap.inc | 291 ++++++ cc65/asminc/cbm_screen_charmap.inc | 305 +++++++ cc65/asminc/cpu.mac | 4 + cc65/asminc/creativision.inc | 66 ++ cc65/asminc/ctype.inc | 31 + cc65/asminc/ctype_common.inc | 91 ++ cc65/asminc/ctypetable.inc | 48 + cc65/asminc/cx16.inc | 574 ++++++++++++ cc65/asminc/em-error.inc | 49 ++ cc65/asminc/em-kernel.inc | 106 +++ cc65/asminc/errno.inc | 37 + cc65/asminc/fcntl.inc | 21 + cc65/asminc/gamate.inc | 64 ++ cc65/asminc/generic.mac | 53 ++ cc65/asminc/get_tv.inc | 22 + cc65/asminc/joy-error.inc | 44 + cc65/asminc/joy-kernel.inc | 83 ++ cc65/asminc/kim1.inc | 31 + cc65/asminc/longbranch.mac | 88 ++ cc65/asminc/lynx.inc | 460 ++++++++++ cc65/asminc/mega65.inc | 239 +++++ cc65/asminc/modload.inc | 78 ++ cc65/asminc/module.mac | 13 + cc65/asminc/mouse-kernel.inc | 184 ++++ cc65/asminc/nes.inc | 93 ++ cc65/asminc/o65.inc | 150 ++++ cc65/asminc/opcodes.inc | 514 +++++++++++ cc65/asminc/pce.inc | 93 ++ cc65/asminc/pet.inc | 100 +++ cc65/asminc/plus4.inc | 86 ++ cc65/asminc/rp6502.inc | 94 ++ cc65/asminc/ser-error.inc | 55 ++ cc65/asminc/ser-kernel.inc | 162 ++++ cc65/asminc/signal.inc | 57 ++ cc65/asminc/sim65.inc | 75 ++ cc65/asminc/smc.inc | 267 ++++++ cc65/asminc/stat.inc | 64 ++ cc65/asminc/statvfs.inc | 46 + cc65/asminc/stdio.inc | 74 ++ cc65/asminc/supervision.inc | 75 ++ cc65/asminc/sym1.inc | 186 ++++ cc65/asminc/telestrat.inc | 546 ++++++++++++ cc65/asminc/tgi-error.inc | 52 ++ cc65/asminc/tgi-kernel.inc | 233 +++++ cc65/asminc/tgi-vectorfont.inc | 70 ++ cc65/asminc/time.inc | 74 ++ cc65/asminc/utsname.inc | 46 + cc65/asminc/vic20.inc | 119 +++ cc65/asminc/zeropage.inc | 40 + cc65/bin/ar65 | Bin 0 -> 46680 bytes cc65/bin/ca65 | Bin 0 -> 378768 bytes cc65/bin/cc65 | Bin 0 -> 704680 bytes cc65/bin/chrcvt65 | Bin 0 -> 36576 bytes cc65/bin/cl65 | Bin 0 -> 92176 bytes cc65/bin/co65 | Bin 0 -> 50712 bytes cc65/bin/da65 | Bin 0 -> 249896 bytes cc65/bin/grc65 | Bin 0 -> 53936 bytes cc65/bin/ld65 | Bin 0 -> 183360 bytes cc65/bin/od65 | Bin 0 -> 54752 bytes cc65/bin/sim65 | Bin 0 -> 176616 bytes cc65/bin/sp65 | Bin 0 -> 78024 bytes 95 files changed, 10919 insertions(+), 10 deletions(-) create mode 100644 README.md create mode 100644 cc65/asminc/_file.inc create mode 100644 cc65/asminc/_heap.inc create mode 100644 cc65/asminc/accelerator.inc create mode 100644 cc65/asminc/agat.inc create mode 100644 cc65/asminc/apple2.inc create mode 100644 cc65/asminc/apple2.mac create mode 100644 cc65/asminc/ascii_charmap.inc create mode 100644 cc65/asminc/atari.inc create mode 100644 cc65/asminc/atari.mac create mode 100644 cc65/asminc/atari2600.inc create mode 100644 cc65/asminc/atari2600_riot.inc create mode 100644 cc65/asminc/atari2600_tia.inc create mode 100644 cc65/asminc/atari5200.inc create mode 100644 cc65/asminc/atari7800.inc create mode 100644 cc65/asminc/atari7800_maria.inc create mode 100644 cc65/asminc/atari7800_riot.inc create mode 100644 cc65/asminc/atari7800_tia.inc create mode 100644 cc65/asminc/atari_antic.inc create mode 100644 cc65/asminc/atari_atascii_charmap.inc create mode 100644 cc65/asminc/atari_gtia.inc create mode 100644 cc65/asminc/atari_pokey.inc create mode 100644 cc65/asminc/atari_screen_charmap.inc create mode 100644 cc65/asminc/atmos.inc create mode 100644 cc65/asminc/c128.inc create mode 100644 cc65/asminc/c16.inc create mode 100644 cc65/asminc/c64.inc create mode 100644 cc65/asminc/c65.inc create mode 100644 cc65/asminc/cbm.mac create mode 100644 cc65/asminc/cbm510.inc create mode 100644 cc65/asminc/cbm610.inc create mode 100644 cc65/asminc/cbm_filetype.inc create mode 100644 cc65/asminc/cbm_kernal.inc create mode 100644 cc65/asminc/cbm_petscii_charmap.inc create mode 100644 cc65/asminc/cbm_screen_charmap.inc create mode 100644 cc65/asminc/cpu.mac create mode 100644 cc65/asminc/creativision.inc create mode 100644 cc65/asminc/ctype.inc create mode 100644 cc65/asminc/ctype_common.inc create mode 100644 cc65/asminc/ctypetable.inc create mode 100644 cc65/asminc/cx16.inc create mode 100644 cc65/asminc/em-error.inc create mode 100644 cc65/asminc/em-kernel.inc create mode 100644 cc65/asminc/errno.inc create mode 100644 cc65/asminc/fcntl.inc create mode 100644 cc65/asminc/gamate.inc create mode 100644 cc65/asminc/generic.mac create mode 100644 cc65/asminc/get_tv.inc create mode 100644 cc65/asminc/joy-error.inc create mode 100644 cc65/asminc/joy-kernel.inc create mode 100644 cc65/asminc/kim1.inc create mode 100644 cc65/asminc/longbranch.mac create mode 100644 cc65/asminc/lynx.inc create mode 100644 cc65/asminc/mega65.inc create mode 100644 cc65/asminc/modload.inc create mode 100644 cc65/asminc/module.mac create mode 100644 cc65/asminc/mouse-kernel.inc create mode 100644 cc65/asminc/nes.inc create mode 100644 cc65/asminc/o65.inc create mode 100644 cc65/asminc/opcodes.inc create mode 100644 cc65/asminc/pce.inc create mode 100644 cc65/asminc/pet.inc create mode 100644 cc65/asminc/plus4.inc create mode 100644 cc65/asminc/rp6502.inc create mode 100644 cc65/asminc/ser-error.inc create mode 100644 cc65/asminc/ser-kernel.inc create mode 100644 cc65/asminc/signal.inc create mode 100644 cc65/asminc/sim65.inc create mode 100644 cc65/asminc/smc.inc create mode 100644 cc65/asminc/stat.inc create mode 100644 cc65/asminc/statvfs.inc create mode 100644 cc65/asminc/stdio.inc create mode 100644 cc65/asminc/supervision.inc create mode 100644 cc65/asminc/sym1.inc create mode 100644 cc65/asminc/telestrat.inc create mode 100644 cc65/asminc/tgi-error.inc create mode 100644 cc65/asminc/tgi-kernel.inc create mode 100644 cc65/asminc/tgi-vectorfont.inc create mode 100644 cc65/asminc/time.inc create mode 100644 cc65/asminc/utsname.inc create mode 100644 cc65/asminc/vic20.inc create mode 100644 cc65/asminc/zeropage.inc create mode 100755 cc65/bin/ar65 create mode 100755 cc65/bin/ca65 create mode 100755 cc65/bin/cc65 create mode 100755 cc65/bin/chrcvt65 create mode 100755 cc65/bin/cl65 create mode 100755 cc65/bin/co65 create mode 100755 cc65/bin/da65 create mode 100755 cc65/bin/grc65 create mode 100755 cc65/bin/ld65 create mode 100755 cc65/bin/od65 create mode 100755 cc65/bin/sim65 create mode 100755 cc65/bin/sp65 diff --git a/README.md b/README.md new file mode 100644 index 0000000..3aa4f1c --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# WIP NES emulator written in Rust + +This is a work in progress NES emulator. + +If you find any issues, feel free to open an issue... diff --git a/build.rs b/build.rs index f8b1752..e6f3770 100644 --- a/build.rs +++ b/build.rs @@ -42,17 +42,18 @@ fn main() { let file = file.expect("test"); let file_name = file.file_name(); let file_name = file_name.to_str().unwrap(); - if let Some(file_name) = file_name.strip_suffix(".asm") { - run( - format_args!("asm6f {file_name}"), - Command::new("./asm6f") - .arg(file.file_name()) - .arg(format!("{name}/{file_name}.nes")), - ); - } else if let Some(file_name) = file_name.strip_suffix(".s") { + // if let Some(file_name) = file_name.strip_suffix(".asm") { + // run( + // format_args!("asm6f {file_name}"), + // Command::new("./asm6f") + // .arg(file.file_name()) + // .arg(format!("{name}/{file_name}.nes")), + // ); + // } else + if let Some(file_name) = file_name.strip_suffix(".s") { run( format_args!("ca65 {file_name}"), - Command::new("/home/matthew/cc65/bin/ca65") + Command::new("../../cc65/bin/ca65") .arg("-I") .arg("common") .arg("-o") @@ -61,7 +62,7 @@ fn main() { ); run( format_args!("ld65 {file_name}"), - Command::new("/home/matthew/cc65/bin/ld65") + Command::new("../../cc65/bin/ld65") .arg("-C") .arg("nes.cfg") .arg("-o") diff --git a/cc65/asminc/_file.inc b/cc65/asminc/_file.inc new file mode 100644 index 0000000..a9ac1e3 --- /dev/null +++ b/cc65/asminc/_file.inc @@ -0,0 +1,27 @@ +; +; _file.inc +; +; (C) Copyright 2002 Ullrich von Bassewitz (uz@cc65.org) +; + +; Assembler include file that makes the constants and structures in _file.h +; available for asm code. + +; Struct _FILE +.struct _FILE + f_fd .byte + f_flags .byte + f_pushback .byte +.endstruct + +; Flags field +_FCLOSED = $00 +_FOPEN = $01 +_FEOF = $02 +_FERROR = $04 +_FPUSHBACK = $08 + +; File table +.global __filetab + + diff --git a/cc65/asminc/_heap.inc b/cc65/asminc/_heap.inc new file mode 100644 index 0000000..1bf80ac --- /dev/null +++ b/cc65/asminc/_heap.inc @@ -0,0 +1,35 @@ +; +; _heap.inc +; +; (c) Copyright 2003, Ullrich von Bassewitz (uz@cc65.org) +; + +; Assembler include file that makes the constants and structures in _heap.h +; available for asm code. + +; Struct freeblock +; NOTE: For performance reasons, the asm code often uses increment/decrement +; operators to access other offsets, so just changing offsets here will +; probably not work. +.struct freeblock + size .word + next .addr + prev .addr +.endstruct + +; Struct usedblock +; See notes above +.struct usedblock + size .word + start .addr +.endstruct + +HEAP_MIN_BLOCKSIZE = .sizeof (freeblock) ; Minimum size of an allocated block +HEAP_ADMIN_SPACE = .sizeof (usedblock) ; Additional space for used bock + +; Variables +.global ___heaporg +.global ___heapptr +.global ___heapend +.global ___heapfirst +.global ___heaplast diff --git a/cc65/asminc/accelerator.inc b/cc65/asminc/accelerator.inc new file mode 100644 index 0000000..23a9686 --- /dev/null +++ b/cc65/asminc/accelerator.inc @@ -0,0 +1,80 @@ +; +; Accelerator definitions. +; + +; --------------------------------------------------------------------------- +; Speed definitions for all accelerator, to be used as input for the 'set' +; functions. + + +SPEED_SLOW = $00 +SPEED_FAST = $FF + +SPEED_1X = SPEED_SLOW +SPEED_2X = 2 - 1 +SPEED_3X = 3 - 1 +SPEED_4X = 4 - 1 +SPEED_5X = 5 - 1 +SPEED_6X = 6 - 1 +SPEED_7X = 7 - 1 +SPEED_8X = 8 - 1 +SPEED_10X = 10 - 1 +SPEED_12X = 12 - 1 +SPEED_16X = 16 - 1 +SPEED_20X = 20 - 1 + + +; --------------------------------------------------------------------------- +; C64/C128 Super CPU cartridge + +SuperCPU_Slow := $D07A +SuperCPU_Fast := $D07B +SuperCPU_Speed_Mode := $D0B8 +SuperCPU_Detect := $D0BC + + +; --------------------------------------------------------------------------- +; C64DTV + +C64DTV_Extended_Regs := $D03F + +C64DTV_Slow = $00 +C64DTV_Fast = $03 + + +; --------------------------------------------------------------------------- +; C128 native and C128 in C64 mode + +C128_VICIIE_CLK := $D030 + + +; --------------------------------------------------------------------------- +; C64 Chameleon cartridge + +CHAMELEON_CFGTUR := $D0F3 +CHAMELEON_CFGENA := $D0FE + +CHAMELEON_ENABLE_REGS = $2A +CHAMELEON_DISABLE_REGS = $FF + +CHAMELEON_CFGTUR_LIMIT_1MHZ = %00001100 +CHAMELEON_CFGTUR_LIMIT_NONE = %10000000 + + +; --------------------------------------------------------------------------- +; C65/C64DX in C64 mode + +C65_VICIII_KEY := $D02F +C65_VICIII_CTRL_B := $D031 + +C65_VICIII_UNLOCK_1 = $A5 +C65_VICIII_UNLOCK_2 = $96 + + +; --------------------------------------------------------------------------- +; C64 Turbo Master cartridge + +TURBOMASTER_DETECT := $BF53 + +TURBOMASTER_SPEED_REG := $00 + diff --git a/cc65/asminc/agat.inc b/cc65/asminc/agat.inc new file mode 100644 index 0000000..b96d318 --- /dev/null +++ b/cc65/asminc/agat.inc @@ -0,0 +1,39 @@ + +;----------------------------------------------------------------------------- +; Zero page stuff + +WNDLFT := $20 ; Text window left +WNDWDTH := $21 ; Text window width +WNDTOP := $22 ; Text window top +WNDBTM := $23 ; Text window bottom+1 +CH := $24 ; Cursor horizontal position +CV := $25 ; Cursor vertical position +BASL := $28 ; Text base address low +BASH := $29 ; Text base address high +CURSOR := $2D ; Cursor character +TATTR := $32 ; Text attributes +PROMPT := $33 ; Used by GETLN +VCOUT := $36 ; COUT Subroutine Vector +VCIN := $38 ; CIN Subroutine Vector +RNDL := $4E ; Random counter low +RNDH := $4F ; Random counter high +HIMEM := $73 ; Highest available memory address+1 + +;----------------------------------------------------------------------------- +; Vectors + +DOSWARM := $03D0 ; DOS warmstart vector +BRKVec := $03F0 ; Break vector +SOFTEV := $03F2 ; Vector for warm start +PWREDUP := $03F4 ; This must be = EOR #$A5 of SOFTEV+1 + +;----------------------------------------------------------------------------- +; Hardware + +; Keyboard input +KBD := $C000 ; Read keyboard +KBDSTRB := $C010 ; Clear keyboard strobe + +; Game controller +BUTN0 := $C061 ; Open-Apple Key +BUTN1 := $C062 ; Closed-Apple Key diff --git a/cc65/asminc/apple2.inc b/cc65/asminc/apple2.inc new file mode 100644 index 0000000..bde3838 --- /dev/null +++ b/cc65/asminc/apple2.inc @@ -0,0 +1,95 @@ + +;----------------------------------------------------------------------------- +; Zero page + +WNDLFT := $20 ; Text window left +WNDWDTH := $21 ; Text window width +WNDTOP := $22 ; Text window top +WNDBTM := $23 ; Text window bottom+1 +CH := $24 ; Cursor horizontal position +CV := $25 ; Cursor vertical position +BASL := $28 ; Text base address low +BASH := $29 ; Text base address high +INVFLG := $32 ; Normal/inverse(/flash) +PROMPT := $33 ; Used by GETLN +RNDL := $4E ; Random counter low +RNDH := $4F ; Random counter high +HIMEM := $73 ; Highest available memory address+1 +CURLIN := $75 ; Current line number being executed + +;----------------------------------------------------------------------------- +; Vectors + +DOSWARM := $03D0 ; DOS warmstart vector +BRKVec := $03F0 ; Break vector +SOFTEV := $03F2 ; Vector for warm start +PWREDUP := $03F4 ; This must be = EOR #$A5 of SOFTEV+1 +ROM_RST := $FFFC ; 6502 reset vector +ROM_IRQ := $FFFE ; 6502 IRQ vector + +;----------------------------------------------------------------------------- +; 80 column firmware + +OURCH := $057B ; Cursor horizontal position +OURCV := $05FB ; Cursor vertical position + +;----------------------------------------------------------------------------- +; Hardware + +; Keyboard input +KBD := $C000 ; Read keyboard +KBDSTRB := $C010 ; Clear keyboard strobe + +; 80 column video +CLR80COL:= $C000 ; Disable 80 column store +SET80COL:= $C001 ; Enable 80 column store +RD80COL := $C018 ; >127 if 80 column store enabled +RD80VID := $C01F ; >127 if 80 column video enabled + +; Character set +CLRALTCHAR := $C00E ; Normal Apple II char set +SETALTCHAR := $C00F ; Norm/inv LC, no flash +ALTCHARSET := $C01E ; >127 if alt charset switched in + +; Language card +RDLCBNK2:= $C011 ; >127 if LC bank 2 in use +RDLCRAM := $C012 ; >127 if LC is read enabled +ROMIN := $C081 ; Swap in D000-FFFF ROM +LCBANK2 := $C083 ; Swap in LC bank 2 +LCBANK1 := $C08B ; Swap in LC bank 1 + +; Vertical blanking +RDVBLBAR := $C019 ; >127 if not vertical blanking +RDVBLMSK := $C041 ; >127 if VBL interrupts enabled +DISVBL := $C05A ; Disable VBL interrupts +ENVBL := $C05B ; Enable VBL interrupts + +; Video mode +TXTCLR := $C050 ; Display graphics +TXTSET := $C051 ; Display text +MIXCLR := $C052 ; Disable 4 lines of text +MIXSET := $C053 ; Enable 4 lines of text +LOWSCR := $C054 ; Page 1 +HISCR := $C055 ; Page 2 +LORES := $C056 ; Lores graphics +HIRES := $C057 ; Hires graphics +DHIRESON := $C05E ; Enable double-width graphics +DHIRESOFF := $C05F ; Disable double-width graphics + +; Game controller +TAPEIN := $C060 ; Read casette input / Switch input 3 +BUTN0 := $C061 ; Switch input 0 / Open-Apple key +BUTN1 := $C062 ; Switch input 1 / Closed-Apple key +BUTN2 := $C063 ; Switch input 2 / Shift key +PADDL0 := $C064 ; Analog input 0 +PADDL1 := $C065 ; Analog input 1 +PADDL2 := $C066 ; Analog input 2 +PADDL3 := $C067 ; Analog input 3 +PTRIG := $C070 ; Analog input reset + +; Input/Output Unit +IOUDISON := $C07E ; Disable IOU +IOUDISOFF := $C07F ; Enable IOU + +; Control Your Apple +CYAREG := $C036 ; Bits 0-3=disk detect 4=shadow all banks 7=fast diff --git a/cc65/asminc/apple2.mac b/cc65/asminc/apple2.mac new file mode 100644 index 0000000..c0c9571 --- /dev/null +++ b/cc65/asminc/apple2.mac @@ -0,0 +1,54 @@ +; Convert characters to screen codes + +; Helper macro that converts and outputs one character +.macro _scrcode char + .if (char < 256) + .byte (char + 128) + .else + .error "scrcode: Character constant out of range" + .endif +.endmacro + +.macro scrcode arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 + + ; Bail out if next argument is empty + .if .blank (arg1) + .exitmacro + .endif + + ; Check for a string + .if .match ({arg1}, "") + + ; Walk over all string chars + .repeat .strlen (arg1), i + _scrcode {.strat (arg1, i)} + .endrepeat + + ; Check for a number + .elseif .match (.left (1, {arg1}), 0) + + ; Just output the number + _scrcode arg1 + + ; Check for a character + .elseif .match (.left (1, {arg1}), 'a') + + ; Just output the character + _scrcode arg1 + + ; Check for an identifier + .elseif .match (.left (1, {arg1}), identifier) + + ; Just output the identifier + _scrcode arg1 + + ; Anything else is an error + .else + + .error "scrcode: invalid argument type" + + .endif + + ; Call the macro recursively with the remaining args + scrcode arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 +.endmacro diff --git a/cc65/asminc/ascii_charmap.inc b/cc65/asminc/ascii_charmap.inc new file mode 100644 index 0000000..ecbf264 --- /dev/null +++ b/cc65/asminc/ascii_charmap.inc @@ -0,0 +1,287 @@ +;/*****************************************************************************/ +;/* */ +;/* ascii_charmap.inc */ +;/* */ +;/* No translations, encodings are stored as they were typed in the host. */ +;/* */ +;/* */ +;/* 2019-09-07, Greg King */ +;/* */ +;/* This software is provided "as-is", without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated, but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice must not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + +;/* ASCII */ +.charmap $00, $00 +.charmap $01, $01 +.charmap $02, $02 +.charmap $03, $03 +.charmap $04, $04 +.charmap $05, $05 +.charmap $06, $06 +.charmap $07, $07 +.charmap $08, $08 +.charmap $09, $09 +.charmap $0A, $0A +.charmap $0B, $0B +.charmap $0C, $0C +.charmap $0D, $0D +.charmap $0E, $0E +.charmap $0F, $0F +.charmap $10, $10 +.charmap $11, $11 +.charmap $12, $12 +.charmap $13, $13 +.charmap $14, $14 +.charmap $15, $15 +.charmap $16, $16 +.charmap $17, $17 +.charmap $18, $18 +.charmap $19, $19 +.charmap $1A, $1A +.charmap $1B, $1B +.charmap $1C, $1C +.charmap $1D, $1D +.charmap $1E, $1E +.charmap $1F, $1F +.charmap $20, $20 +.charmap $21, $21 +.charmap $22, $22 +.charmap $23, $23 +.charmap $24, $24 +.charmap $25, $25 +.charmap $26, $26 +.charmap $27, $27 +.charmap $28, $28 +.charmap $29, $29 +.charmap $2A, $2A +.charmap $2B, $2B +.charmap $2C, $2C +.charmap $2D, $2D +.charmap $2E, $2E +.charmap $2F, $2F +.charmap $30, $30 +.charmap $31, $31 +.charmap $32, $32 +.charmap $33, $33 +.charmap $34, $34 +.charmap $35, $35 +.charmap $36, $36 +.charmap $37, $37 +.charmap $38, $38 +.charmap $39, $39 +.charmap $3A, $3A +.charmap $3B, $3B +.charmap $3C, $3C +.charmap $3D, $3D +.charmap $3E, $3E +.charmap $3F, $3F +.charmap $40, $40 +.charmap $41, $41 +.charmap $42, $42 +.charmap $43, $43 +.charmap $44, $44 +.charmap $45, $45 +.charmap $46, $46 +.charmap $47, $47 +.charmap $48, $48 +.charmap $49, $49 +.charmap $4A, $4A +.charmap $4B, $4B +.charmap $4C, $4C +.charmap $4D, $4D +.charmap $4E, $4E +.charmap $4F, $4F +.charmap $50, $50 +.charmap $51, $51 +.charmap $52, $52 +.charmap $53, $53 +.charmap $54, $54 +.charmap $55, $55 +.charmap $56, $56 +.charmap $57, $57 +.charmap $58, $58 +.charmap $59, $59 +.charmap $5A, $5A +.charmap $5B, $5B +.charmap $5C, $5C +.charmap $5D, $5D +.charmap $5E, $5E +.charmap $5F, $5F +.charmap $60, $60 +.charmap $61, $61 +.charmap $62, $62 +.charmap $63, $63 +.charmap $64, $64 +.charmap $65, $65 +.charmap $66, $66 +.charmap $67, $67 +.charmap $68, $68 +.charmap $69, $69 +.charmap $6A, $6A +.charmap $6B, $6B +.charmap $6C, $6C +.charmap $6D, $6D +.charmap $6E, $6E +.charmap $6F, $6F +.charmap $70, $70 +.charmap $71, $71 +.charmap $72, $72 +.charmap $73, $73 +.charmap $74, $74 +.charmap $75, $75 +.charmap $76, $76 +.charmap $77, $77 +.charmap $78, $78 +.charmap $79, $79 +.charmap $7A, $7A +.charmap $7B, $7B +.charmap $7C, $7C +.charmap $7D, $7D +.charmap $7E, $7E +.charmap $7F, $7F + +;/* beyond ASCII */ +.charmap $80, $80 +.charmap $81, $81 +.charmap $82, $82 +.charmap $83, $83 +.charmap $84, $84 +.charmap $85, $85 +.charmap $86, $86 +.charmap $87, $87 +.charmap $88, $88 +.charmap $89, $89 +.charmap $8A, $8A +.charmap $8B, $8B +.charmap $8C, $8C +.charmap $8D, $8D +.charmap $8E, $8E +.charmap $8F, $8F +.charmap $90, $90 +.charmap $91, $91 +.charmap $92, $92 +.charmap $93, $93 +.charmap $94, $94 +.charmap $95, $95 +.charmap $96, $96 +.charmap $97, $97 +.charmap $98, $98 +.charmap $99, $99 +.charmap $9A, $9A +.charmap $9B, $9B +.charmap $9C, $9C +.charmap $9D, $9D +.charmap $9E, $9E +.charmap $9F, $9F +.charmap $A0, $A0 +.charmap $A1, $A1 +.charmap $A2, $A2 +.charmap $A3, $A3 +.charmap $A4, $A4 +.charmap $A5, $A5 +.charmap $A6, $A6 +.charmap $A7, $A7 +.charmap $A8, $A8 +.charmap $A9, $A9 +.charmap $AA, $AA +.charmap $AB, $AB +.charmap $AC, $AC +.charmap $AD, $AD +.charmap $AE, $AE +.charmap $AF, $AF +.charmap $B0, $B0 +.charmap $B1, $B1 +.charmap $B2, $B2 +.charmap $B3, $B3 +.charmap $B4, $B4 +.charmap $B5, $B5 +.charmap $B6, $B6 +.charmap $B7, $B7 +.charmap $B8, $B8 +.charmap $B9, $B9 +.charmap $BA, $BA +.charmap $BB, $BB +.charmap $BC, $BC +.charmap $BD, $BD +.charmap $BE, $BE +.charmap $BF, $BF +.charmap $C0, $C0 +.charmap $C1, $C1 +.charmap $C2, $C2 +.charmap $C3, $C3 +.charmap $C4, $C4 +.charmap $C5, $C5 +.charmap $C6, $C6 +.charmap $C7, $C7 +.charmap $C8, $C8 +.charmap $C9, $C9 +.charmap $CA, $CA +.charmap $CB, $CB +.charmap $CC, $CC +.charmap $CD, $CD +.charmap $CE, $CE +.charmap $CF, $CF +.charmap $D0, $D0 +.charmap $D1, $D1 +.charmap $D2, $D2 +.charmap $D3, $D3 +.charmap $D4, $D4 +.charmap $D5, $D5 +.charmap $D6, $D6 +.charmap $D7, $D7 +.charmap $D8, $D8 +.charmap $D9, $D9 +.charmap $DA, $DA +.charmap $DB, $DB +.charmap $DC, $DC +.charmap $DD, $DD +.charmap $DE, $DE +.charmap $DF, $DF +.charmap $E0, $E0 +.charmap $E1, $E1 +.charmap $E2, $E2 +.charmap $E3, $E3 +.charmap $E4, $E4 +.charmap $E5, $E5 +.charmap $E6, $E6 +.charmap $E7, $E7 +.charmap $E8, $E8 +.charmap $E9, $E9 +.charmap $EA, $EA +.charmap $EB, $EB +.charmap $EC, $EC +.charmap $ED, $ED +.charmap $EE, $EE +.charmap $EF, $EF +.charmap $F0, $F0 +.charmap $F1, $F1 +.charmap $F2, $F2 +.charmap $F3, $F3 +.charmap $F4, $F4 +.charmap $F5, $F5 +.charmap $F6, $F6 +.charmap $F7, $F7 +.charmap $F8, $F8 +.charmap $F9, $F9 +.charmap $FA, $FA +.charmap $FB, $FB +.charmap $FC, $FC +.charmap $FD, $FD +.charmap $FE, $FE +.charmap $FF, $FF diff --git a/cc65/asminc/atari.inc b/cc65/asminc/atari.inc new file mode 100644 index 0000000..c2a210e --- /dev/null +++ b/cc65/asminc/atari.inc @@ -0,0 +1,1169 @@ +;------------------------------------------------------------------------- +; Atari System Equates +; by Freddy Offenga, Christian Groessler, and Christian Krueger +; +; References: +; - Atari 400/800 OS rev.B source code, Atari 1979 +; - Atari OS manual - XL addendum +; - Atari XL/XE rev.2 source code, Atari 1984 +; - Mapping the Atari - revised edition, Ian Chadwick 1985 +; - SpartaDOS-X User Guide (Aug-8-2016) +; +; ##old## old OS rev.B label - moved or deleted +; ##1200xl## new label introduced in 1200XL OS (rev.10/11) +; ##rev2## new label introduced in XL/XE OS rev.2 +;------------------------------------------------------------------------- + +;------------------------------------------------------------------------- +; Configuration Equates +;------------------------------------------------------------------------- + +MAXDEV = 33 ;offset to last possible entry of HATABS +IOCBSZ = 16 ;length of IOCB + +SEIOCB = 0*IOCBSZ ;##rev2## screen editor IOCB index +MAXIOC = 8*IOCBSZ ;first invalid IOCB index + +DSCTSZ = 128 ;##rev2## disk sector size + +LEDGE = 2 ;left edge +REDGE = 39 ;right edge + +INIML = $0700 ;##rev2## initial MEMLO + +ICSORG = $CC00 ;##rev2## international character set origin +DCSORG = $E000 ;##rev2## domestic character set origin + +; IOCB Command Code Equates + +OPEN = $03 ;open +GETREC = $05 ;get record +GETCHR = $07 ;get character(s) +PUTREC = $09 ;put record +PUTCHR = $0B ;put character(s) +CLOSE = $0C ;close +STATIS = $0D ;status +SPECIL = $0E ;special + +; DOS IOCB command codes + +RENAME = $20 ;rename disk file +DELETE = $21 ;delete disk file +LOCKFL = $23 ;lock file (set to read-only) +UNLOCK = $24 ;unlock file +POINT = $25 ;point sector +NOTE = $26 ;note sector +GETFL = $27 ;get file length +CHDIR_MYDOS = $29 ;change directory (MyDOS) +MKDIR = $2A ;make directory (MyDOS/SpartaDOS) +RMDIR = $2B ;remove directory (SpartaDOS) +CHDIR_SPDOS = $2C ;change directory (SpartaDOS) +FORMAT = $FE ;format + +GETCWD = $30 ;get current directory (MyDOS/SpartaDOS) + +; Special Entry Command Equates +; DOS Commands +; Command line table, Index values for (DOSVEC),Y -- COMTAB +; Compatible with OS/A+, DOS XL and SpartaDOS + +COMTAB = 0 ;DOS entry jump vector +ZCRNAME = 3 ;file name crunch routine jump vector +BUFOFF = 10 ;next parameter buffer offset +COMFNAM = 33 ;destination buffer for crunch routine +LBUF = 63 ;command line input buffer + +; Screen IOCB Commands + +DRAWLN = $11 ;draw line +FILLIN = $12 ;draw line with right fill + +; ICAX1 Auxiliary Byte 1 Equates + +APPEND = $01 ;open write append (D:) +DIRECT = $02 ;open for directory access (D:) +OPNIN = $04 ;open for input (all devices) +OPNOT = $08 ;open for output (all devices) +MXDMOD = $10 ;open for mixed mode (E:, S:) +INSCLR = $20 ;open for input without clearing screen + +; Device Code Equates + +CASSET = 'C' ;cassette +DISK = 'D' ;disk +SCREDT = 'E' ;screen editor +KBD = 'K' ;keyboard +PRINTR = 'P' ;printer +DISPLY = 'S' ;screen display + +; SIO Command Code Equates + +SIO_FORMAT = $21 ;format disk (default density) +SIO_FORMATS = $22 ;1050: format medium density +SIO_CONFIG = $44 ;configure drive +SIO_CONFIGSF = $4B ;slow/fast configure drive?? +SIO_RDPERCOM = $4E ;read PERCOM block (XF551) +SIO_WRPERCOM = $4F ;write PERCOM block (XF551) +SIO_WRITE = $50 ;write sector +SIO_READ = $52 ;read sector +SIO_STAT = $53 ;get status information +SIO_VERIFY = $56 ;verify sector +SIO_WRITEV = $57 ;write sector with verify +SIO_WRITETRK = $60 ;write track (Speedy) +SIO_READTRK = $62 ;read track (Speedy) + +; SIO Status Code (DSTATS) +; Input: data direction +; Bit #7 - W (write operation) +; #6 - R (read operation) +; Output: status code +; $01 (001) -- OPERATION COMPLETE (NO ERRORS) +; $8A (138) -- DEVICE TIMEOUT (DOESN'T RESPOND) +; $8B (139) -- DEVICE NAK +; $8C (140) -- SERIAL BUS INPUT FRAMING ERROR +; $8E (142) -- SERIAL BUS DATA FRAME OVERRUN ERROR +; $8F (143) -- SERIAL BUS DATA FRAME CHECKSUM ERROR +; $90 (144) -- DEVICE DONE ERROR + +; Character and Key Code Equates + +CLS = $7D ;##rev2## clear screen +EOL = $9B ;end of line (RETURN) + +HELP = $11 ;##1200xl## key code for HELP +CNTLF1 = $83 ;##1200xl## key code for CTRL-F1 +CNTLF2 = $84 ;##1200xl## key code for CTRL-F2 +CNTLF3 = $93 ;##1200xl## key code for CTRL-F3 +CNTLF4 = $94 ;##1200xl## key code for CTRL-F4 +CNTL1 = $9F ;##1200xl## key code for CTRL-1 + +; Status Code Equates + +SUCCES = 1 ;($01) succesful operation + +BRKABT = 128 ;($80) BREAK key abort +PRVOPN = 129 ;($81) IOCB already open error +NONDEV = 130 ;($82) nonexistent device error +WRONLY = 131 ;($83) IOCB opened for write only error +NVALID = 132 ;($84) invalid command error +NOTOPN = 133 ;($85) device/file not open error +BADIOC = 134 ;($86) invalid IOCB index error +RDONLY = 135 ;($87) IOCB opened for read only error +EOFERR = 136 ;($88) end of file error +TRNRCD = 137 ;($89) truncated record error +TIMOUT = 138 ;($8A) peripheral device timeout error +DNACK = 139 ;($8B) device does not acknowledge command +FRMERR = 140 ;($8C) serial bus framing error +CRSROR = 141 ;($8D) cursor overrange error +OVRRUN = 142 ;($8E) serial bus data overrun error +CHKERR = 143 ;($8F) serial bus checksum error +DERROR = 144 ;($90) device done (operation incomplete) +BADMOD = 145 ;($91) bad screen mode number error +FNCNOT = 146 ;($92) function not implemented in handler +SCRMEM = 147 ;($93) insufficient memory for screen mode + +DSKFMT = 148 ;($94) SpartaDOS: unrecognized disk format +INCVER = 149 ;($95) SpartaDOS: disk was made with incompat. version +DIRNFD = 150 ;($96) SpartaDOS: directory not found +FEXIST = 151 ;($97) SpartaDOS: file exists +NOTBIN = 152 ;($98) SpartaDOS: file not binary +LSYMND = 154 ;($9A) SDX: loader symbol not defined +BADPRM = 156 ;($9C) SDX: bad parameter +OUTOFM = 158 ;($9E) SDX: out of memory +INVDEV = 160 ;($A0) invalid device number +TMOF = 161 ;($A1) too many open files +DSKFLL = 162 ;($A2) disk full +FATLIO = 163 ;($A3) fatal I/O error +FNMSMT = 164 ;($A4) internal file number mismatch +INVFNM = 165 ;($A5) invalid file name +PDLERR = 166 ;($A6) point data length error +EPERM = 167 ;($A7) permission denied +DINVCM = 168 ;($A8) command invalid for disk +DIRFLL = 169 ;($A9) directory full +FNTFND = 170 ;($AA) file not found +PNTINV = 171 ;($AB) point invalid +BADDSK = 173 ;($AD) bad disk +INCFMT = 176 ;($B0) DOS 3: incompatible file system +XNTBIN = 180 ;($B4) XDOS: file not binary + +; DCB Device Bus Equates + +DISKID = $31 ;##rev2## disk bus ID +PDEVN = $40 ;##rev2## printer bus ID +CASET = $60 ;##rev2## cassette bus ID + +; Bus Command Equates + +FOMAT = '!' ;##rev2## format command +PUTSEC = 'P' ;##rev2## put sector command +READ = 'R' ;##rev2## read command +STATC = 'S' ;##rev2## status command +WRITE = 'W' ;##rev2## write command + +; Command Auxiliary Byte Equates + +DOUBLE = 'D' ;##rev2## print 20 characters double width +NORMAL = 'N' ;##rev2## print 40 characters normally +PLOT = 'P' ;##rev2## plot +SIDWAY = 'S' ;##rev2## print 16 characters sideways + +; Bus Response Equates + +ACK = 'A' ;##rev2## device acknowledged +COMPLT = 'C' ;##rev2## device succesfully completed operation +ERROR = 'E' ;##rev2## device incurred error +NACK = 'N' ;##rev2## device did not understand + +; Floating Point Miscellaneous Equates + +FPREC = 6 ;precision + +FMPREC = FPREC-1 ;##rev2## length of mantissa + +; Cassette Record Type Equates + +HDR = $FB ;##rev2## header +DTA = $FC ;##rev2## data record +DT1 = $FA ;##rev2## last data record +EOT = $FE ;##rev2## end of tape (file) + +TONE1 = 2 ;##rev2## record +TONE2 = 1 ;##rev2## playback + +; Cassette Timing Equates + +WLEADN = 1152 ;##rev2## NTSC 19.2 second WRITE file leader +RLEADN = 576 ;##rev2## NTSC 9.6 second READ file leader +WIRGLN = 180 ;##rev2## NTSC 3.0 second WRITE IRG +RIRGLN = 120 ;##rev2## NTSC 2.0 second READ IRG +WSIRGN = 15 ;##rev2## NTSC 0.25 second WRITE short IRG +RSIRGN = 10 ;##rev2## NTSC 0.16 second READ short IRG +BEEPNN = 30 ;##rev2## NTSC 0.5 second beep duration +BEEPFN = 10 ;##rev2## NTSC 0.16 seconrd beep duration + +WLEADP = 960 ;##rev2## PAL 19.2 second WRITE file leader +RLEADP = 480 ;##rev2## PAL 9.6 second READ file leader +WIRGLP = 150 ;##rev2## PAL 3.0 second WRITE IRG +RIRGLP = 100 ;##rev2## PAL 2.0 second READ IRG +WSIRGP = 13 ;##rev2## PAL 0.25 second WRITE short IRG +RSIRGP = 8 ;##rev2## PAL 0.16 second READ short IRG +BEEPNP = 25 ;##rev2## PAL 0.5 second beep duration +BEEPFP = 8 ;##rev2## PAL 0.16 seconrd beep duration + +WIRGHI = 0 ;##rev2## high WRITE IRG +RIRGHI = 0 ;##rev2## high READ IRG + +; Power-up Validation Byte Value Equates + +PUPVL1 = $5C ;##rev2## power-up validation value 1 +PUPVL2 = $93 ;##rev2## power-up validation value 2 +PUPVL3 = $25 ;##rev2## power-up validation value 3 + +; Relocating Loader Miscellaneous Equates + +DATAER = 156 ;##rev2## end of record appears before END +MEMERR = 157 ;##rev2## memory insufficient for load error + +; Miscellaneous Equates + +IOCFRE = $FF ;IOCB free indication + +B19200 = $0028 ;##rev2## 19200 baud POKEY counter value +B00600 = $05CC ;##rev2## 600 baud POKEY counter value + +HITONE = $05 ;##rev2## FSK high freq. POKEY counter value +LOTONE = $07 ;##rev2## FSK low freq. POKEY counter value + +NCOMLO = $34 ;##rev2## PIA lower NOT COMMAND line command +NCOMHI = $3C ;##rev2## PIA raise NOT COMMAND line command + +MOTRGO = $34 ;##rev2## PIA cassette motor ON command +MOTRST = $3C ;##rev2## PIA cassette motor OFF command + +NODAT = $00 ;##rev2## SIO immediate operation +GETDAT = $40 ;##rev2## SIO read data frame +PUTDAT = $80 ;##rev2## SIO write data frame + +CRETRI = 13 ;##rev2## number of command frame retries +DRETRI = 1 ;##rev2## number of device retries +CTIM = 2 ;##rev2## command frame ACK timeout + +NBUFSZ = 40 ;##rev2## print normal buffer size +DBUFSZ = 20 ;##rev2## print double buffer size +SBUFSZ = 29 ;##rev2## print sideways buffer size + +;------------------------------------------------------------------------- +; Page Zero Address Equates +;------------------------------------------------------------------------- + +LINZBS = $00 ;LINBUG RAM (WILL BE REPLACED BY MONITOR RAM) +LNFLG = $00 ;##1200xl## 1-byte LNBUG flag (0 = not LNBUG) +NGFLAG = $01 ;##1200xl## 1-byte memory status (0 = failure) + +; Not Cleared + +CASINI = $02 ;CASSETTE INIT LOCATION +RAMLO = $04 ;RAM POINTER FOR MEMORY TEST +TRAMSZ = $06 ;TEMPORARY REGISTER FOR RAM SIZE +;TSTDAT = $07 ;##old## RAM TEST DATA REGISTER +CMCMD = $07 ;##rev2## 1-byte command communications + +; Cleared upon Coldstart only + +WARMST = $08 ;WARM START FLAG +BOOTQ = $09 ;SUCCESSFUL BOOT FLAG +DOSVEC = $0A ;DISK SOFTWARE START VECTOR +DOSINI = $0C ;DISK SOFTWARE INIT ADDRESS +APPMHI = $0E ;APPLICATIONS MEMORY HI LIMIT + +; Cleared upon Coldstart or Warmstart + +INTZBS = $10 ;INTERRUPT HANDLER + +POKMSK = $10 ;SYSTEM MASK FOR POKEY IRQ ENABLE (shadow of IRQEN) +BRKKEY = $11 ;BREAK KEY FLAG +RTCLOK = $12 ;REAL TIME CLOCK (IN 16 MSEC UNITS> +BUFADR = $15 ;INDIRECT BUFFER ADDRESS REGISTER +ICCOMT = $17 ;COMMAND FOR VECTOR +DSKFMS = $18 ;DISK FILE MANAGER POINTER +DSKUTL = $1A ;DISK UTILITIES POINTER +ABUFPT = $1C ;##1200xl## 4-byte ACMI buffer pointer area + +;PTIMOT = $1C ;##old## PRINTER TIME OUT REGISTER +;PBPNT = $1D ;##old## PRINT BUFFER POINTER +;PBUFSZ = $1E ;##old## PRINT BUFFER SIZE +;PTEMP = $1F ;##old## TEMPORARY REGISTER + +ZIOCB = $20 ;ZERO PAGE I/O CONTROL BLOCK +IOCBAS = $20 ;16-byte page zero IOCB +ICHIDZ = $20 ;HANDLER INDEX NUMBER (FF = IOCB FREE) +ICDNOZ = $21 ;DEVICE NUMBER (DRIVE NUMBER) +ICCOMZ = $22 ;COMMAND CODE +ICSTAZ = $23 ;STATUS OF LAST IOCB ACTION +ICBALZ = $24 ;BUFFER ADDRESS LOW BYTE +ICBAHZ = $25 ;1-byte high buffer address +ICPTLZ = $26 ;PUT BYTE ROUTINE ADDRESS -1 +ICPTHZ = $27 ;1-byte high PUT-BYTE routine address +ICBLLZ = $28 ;BUFFER LENGTH LOW BYTE +ICBLHZ = $29 ;1-byte high buffer length +ICAX1Z = $2A ;AUXILIARY INFORMATION FIRST BYTE +ICAX2Z = $2B ;1-byte second auxiliary information +ICSPRZ = $2C ;4-byte spares + +ENTVEC = $2C ;##rev2## 2-byte (not used) +ICIDNO = $2E ;IOCB NUMBER X 16 +CIOCHR = $2F ;CHARACTER BYTE FOR CURRENT OPERATION + +STATUS = $30 ;INTERNAL STATUS STORAGE +CHKSUM = $31 ;CHECKSUM (SINGLE BYTE SUM WITH CARRY) +BUFRLO = $32 ;POINTER TO DATA BUFFER (LO BYTE) +BUFRHI = $33 ;POINTER TO DATA BUFFER (HI BYTE) +BFENLO = $34 ;NEXT BYTE PAST END OF THE DATA BUFFER LO +BFENHI = $35 ;NEXT BYTE PAST END OF THE DATA BUFFER HI +;CRETRY = $36 ;##old## NUMBER OF COMMAND FRAME RETRIES +;DRETRY = $37 ;##old## NUMBER OF DEVICE RETRIES +LTEMP = $36 ;##1200xl## 2-byte loader temporary +BUFRFL = $38 ;DATA BUFFER FULL FLAG +RECVDN = $39 ;RECEIVE DONE FLAG +XMTDON = $3A ;TRANSMISSION DONE FLAG +CHKSNT = $3B ;CHECKSUM SENT FLAG +NOCKSM = $3C ;NO CHECKSUM FOLLOWS DATA FLAG +BPTR = $3D ;1-byte cassette buffer pointer +FTYPE = $3E ;1-byte cassette IRG type +FEOF = $3F ;1-byte cassette EOF flag (0 = quiet) +FREQ = $40 ;1-byte cassette beep counter +SOUNDR = $41 ;NOISY I/0 FLAG. (ZERO IS QUIET) + +CRITIC = $42 ;DEFINES CRITICAL SECTION (CRITICAL IF NON-Z) + +FMSZPG = $43 ;DISK FILE MANAGER SYSTEM ZERO PAGE + +;CKEY = $4A ;##old## FLAG SET WHEN GAME START PRESSED +ZCHAIN = $4A ;##1200xl## 2-byte handler linkage chain pointer +;CASSBT = $4B ;##old## CASSETTE BOOT FLAG +DSTAT = $4C ;DISPLAY STATUS +ATRACT = $4D ;ATRACT FLAG +DRKMSK = $4E ;DARK ATRACT MASK +COLRSH = $4F ;ATRACT COLOR SHIFTER (EOR'ED WITH PLAYFIELD + + +TMPCHR = $50 ;1-byte temporary character +HOLD1 = $51 ;1-byte temporary +LMARGN = $52 ;left margin (normally 2, cc65 C startup code sets it to 0) +RMARGN = $53 ;right margin (normally 39 if no XEP80 is used) +ROWCRS = $54 ;1-byte cursor row +COLCRS = $55 ;2-byte cursor column +DINDEX = $57 ;1-byte display mode +SAVMSC = $58 ;2-byte saved memory scan counter +OLDROW = $5A ;1-byte prior row +OLDCOL = $5B ;2-byte prior column +OLDCHR = $5D ;DATA UNDER CURSOR +OLDADR = $5E ;2-byte saved cursor memory address +FKDEF = $60 ;##1200xl## 2-byte function key definition table +;NEWROW = $60 ;##old## POINT DRAW GOES TO +;NEWCOL = $61 ;##old## +PALNTS = $62 ;##1200xl## 1-byte PAL/NTSC indicator (0 = NTSC) +LOGCOL = $63 ;POINTS AT COLUMN IN LOGICAL LINE +ADRESS = $64 ;2-byte temporary address + +MLTTMP = $66 ;1-byte temporary +OPNTMP = $66 ;FIRST BYTE IS USED IN OPEN AS TEMP +TOADR = $66 ;##rev2## 2-byte destination address + +SAVADR = $68 ;2-byte saved address +FRMADR = $68 ;##rev2## 2-byte source address + +RAMTOP = $6A ;RAM SIZE DEFINED BY POWER ON LOGIC +BUFCNT = $6B ;BUFFER COUNT +BUFSTR = $6C ;EDITOR GETCH POINTER +BITMSK = $6E ;BIT MASK +SHFAMT = $6F ;1-byte shift amount for pixel justifucation +ROWAC = $70 ;2-byte draw working row +COLAC = $72 ;2-byte draw working column +ENDPT = $74 ;2-byte end point +DELTAR = $76 ;1-byte row difference +DELTAC = $77 ;2-byte column difference +KEYDEF = $79 ;##1200xl## 2-byte key definition table address +;ROWINC = $79 ;##old## +;COLINC = $7A ;##old## +SWPFLG = $7B ;NON-0 1F TXT AND REGULAR RAM IS SWAPPED +HOLDCH = $7C ;CH IS MOVED HERE IN KGETCH BEFORE CNTL & SH +INSDAT = $7D ;1-byte temporary +COUNTR = $7E ;2-byte draw iteration count + +; Floating Point Package Page Zero Address Equates + +FR0 = $D4 ;6-byte register 0 +FR0M = $D5 ;##rev2## 5-byte register 0 mantissa +QTEMP = $D9 ;##rev2## 1-byte temporary + +FRE = $DA ;6-byte (internal) register E + +FR1 = $E0 ;FP REG1 +FR1M = $E1 ;##rev2## 5-byte register 1 mantissa + +FR2 = $E6 ;6-byte (internal) register 2 + +FRX = $EC ;1-byte temporary + +EEXP = $ED ;VALUE OF E + +FRSIGN = $EE ;##rev2## 1-byte floating point sign +NSIGN = $EE ;SIGN OF # + +PLYCNT = $EF ;##rev2## 1-byte polynomial degree +ESIGN = $EF ;SIGN OF EXPONENT + +SGNFLG = $F0 ;##rev2## 1-byte sign flag +FCHRFLG = $F0 ;1ST CHAR FLAG + +XFMFLG = $F1 ;##rev2## 1-byte transform flag +DIGRT = $F1 ;# OF DIGITS RIGHT OF DECIMAL + +CIX = $F2 ;CURRENT INPUT INDEX +INBUFF = $F3 ;POINTS TO USER'S LINE INPUT BUFFER + +ZTEMP1 = $F5 ;2-byte temporary +ZTEMP4 = $F7 ;2-byte temporary +ZTEMP3 = $F9 ;2-byte temporary + +;DEGFLG = $FB ;##old## same as RADFLG +;RADFLG = $FB ;##old## 0=RADIANS, 6=DEGREES + +FLPTR = $FC ;2-byte floating point number pointer +FPTR2 = $FE ;2-byte floating point number pointer + +;------------------------------------------------------------------------- +; Page Two Address Equates +;------------------------------------------------------------------------- + +INTABS = $0200 ;INTERRUPT RAM + +VDSLST = $0200 ;DISPLAY LIST NMI VECTOR +VPRCED = $0202 ;PROCEED LINE IRQ VECTOR +VINTER = $0204 ;INTERRUPT LINE IRQ VECTOR +VBREAK = $0206 ;SOFTWARE BREAK (00) INSTRUCTION IRQ VECTOR +VKEYBD = $0208 ;POKEY KEYBOARD IRQ VECTOR +VSERIN = $020A ;POKEY SERIAL INPUT READY IRQ +VSEROR = $020C ;POKEY SERIAL OUTPUT READY IRQ +VSEROC = $020E ;POKEY SERIAL OUTPUT COMPLETE IRQ +VTIMR1 = $0210 ;POKEY TIMER 1 IRQ +VTIMR2 = $0212 ;POKEY TIMER 2 IRQ +VTIMR4 = $0214 ;POKEY TIMER 4 IRQ +VIMIRQ = $0216 ;IMMEDIATE IRQ VECTOR +CDTMV1 = $0218 ;COUNT DOWN TIMER 1 +CDTMV2 = $021A ;COUNT DOWN TIMER 2 +CDTMV3 = $021C ;COUNT DOWN TIMER 3 +CDTMV4 = $021E ;COUNT DOWN TIMER 4 +CDTMV5 = $0220 ;COUNT DOWN TIMER 5 +VVBLKI = $0222 ;IMMEDIATE VERTICAL BLANK NMI VECTOR +VVBLKD = $0224 ;DEFERRED VERTICAL BLANK NMI VECTOR +CDTMA1 = $0226 ;COUNT DOWN TIMER 1 JSR ADDRESS +CDTMA2 = $0228 ;COUNT DOWN TIMER 2 JSR ADDRESS +CDTMF3 = $022A ;COUNT DOWN TIMER 3 FLAG +SRTIMR = $022B ;SOFTWARE REPEAT TIMER +CDTMF4 = $022C ;COUNT DOWN TIMER 4 FLAG +INTEMP = $022D ;IAN'S TEMP +CDTMF5 = $022E ;COUNT DOWN TIMER FLAG 5 +SDMCTL = $022F ;SAVE DMACTL REGISTER +SDLSTL = $0230 ;SAVE DISPLAY LIST LOW BYTE +SDLSTH = $0231 ;SAVE DISPLAY LIST HI BYTE +SSKCTL = $0232 ;SKCTL REGISTER RAM +LCOUNT = $0233 ;##1200xl## 1-byte relocating loader record +LPENH = $0234 ;LIGHT PEN HORIZONTAL VALUE +LPENV = $0235 ;LIGHT PEN VERTICAL VALUE +BRKKY = $0236 ;BREAK KEY VECTOR +;RELADR = $0238 ;##1200xl## 2-byte relocatable loader address +VPIRQ = $0238 ;##rev2## 2-byte parallel device IRQ vector +CDEVIC = $023A ;COMMAND FRAME BUFFER - DEVICE +CCOMND = $023B ;COMMAND +CAUX1 = $023C ;COMMAND AUX BYTE 1 +CAUX2 = $023D ;COMMAND AUX BYTE 2 + +TEMP = $023E ;TEMPORARY RAM CELL + +ERRFLG = $023F ;ERROR FLAG - ANY DEVICE ERROR EXCEPT TIME OUT + +DFLAGS = $0240 ;DISK FLAGS FROM SECTOR ONE +DBSECT = $0241 ;NUMBER OF DISK BOOT SECTORS +BOOTAD = $0242 ;ADDRESS WHERE DISK BOOT LOADER WILL BE PUT +COLDST = $0244 ;COLDSTART FLAG (1=IN MIDDLE OF COLDSTART> +RECLEN = $0245 ;##1200xl## 1-byte relocating loader record length +DSKTIM = $0246 ;DISK TIME OUT REGISTER +;LINBUF = $0247 ;##old## CHAR LINE BUFFER +PDVMSK = $0247 ;##rev2## 1-byte parallel device selection mask +SHPDVS = $0248 ;##rev2## 1-byte PDVS (parallel device select) +PDIMSK = $0249 ;##rev2## 1-byte parallel device IRQ selection +RELADR = $024A ;##rev2## 2-byte relocating loader relative adr. +PPTMPA = $024C ;##rev2## 1-byte parallel device handler temporary +PPTMPX = $024D ;##rev2## 1-byte parallel device handler temporary + +CHSALT = $026B ;##1200xl## 1-byte character set alternate +VSFLAG = $026C ;##1200xl## 1-byte fine vertical scroll count +KEYDIS = $026D ;##1200xl## 1-byte keyboard disable +FINE = $026E ;##1200xl## 1-byte fine scrolling mode +GPRIOR = $026F ;GLOBAL PRIORITY CELL + +PADDL0 = $0270 ;1-byte potentiometer 0 +PADDL1 = $0271 ;1-byte potentiometer 1 +PADDL2 = $0272 ;1-byte potentiometer 2 +PADDL3 = $0273 ;1-byte potentiometer 3 +PADDL4 = $0274 ;1-byte potentiometer 4 +PADDL5 = $0275 ;1-byte potentiometer 5 +PADDL6 = $0276 ;1-byte potentiometer 6 +PADDL7 = $0277 ;1-byte potentiometer 7 + +STICK0 = $0278 ;1-byte joystick 0 +STICK1 = $0279 ;1-byte joystick 1 +STICK2 = $027A ;1-byte joystick 2 +STICK3 = $027B ;1-byte joystick 3 + +PTRIG0 = $027C ;1-byte paddle trigger 0 +PTRIG1 = $027D ;1-byte paddle trigger 1 +PTRIG2 = $027E ;1-byte paddle trigger 2 +PTRIG3 = $027F ;1-byte paddle trigger 3 +PTRIG4 = $0280 ;1-byte paddle trigger 4 +PTRIG5 = $0281 ;1-byte paddle trigger 5 +PTRIG6 = $0281 ;1-byte paddle trigger 6 +PTRIG7 = $0283 ;1-byte paddle trigger 7 + +STRIG0 = $0284 ;1-byte joystick trigger 0 +STRIG1 = $0285 ;1-byte joystick trigger 1 +STRIG2 = $0286 ;1-byte joystick trigger 2 +STRIG3 = $0287 ;1-byte joystick trigger 3 + +;CSTAT = $0288 ;##old## cassette status register +HIBYTE = $0288 ;##1200xl## 1-byte relocating loader high byte +WMODE = $0289 ;1-byte cassette WRITE mode +BLIM = $028A ;1-byte cassette buffer limit +IMASK = $028B ;##rev2## (not used) +JVECK = $028C ;2-byte jump vector or temporary +NEWADR = $028E ;##1200xl## 2-byte relocating address +TXTROW = $0290 ;TEXT ROWCRS +TXTCOL = $0291 ;TEXT COLCRS +TINDEX = $0293 ;TEXT INDEX +TXTMSC = $0294 ;FOOLS CONVRT INTO NEW MSC +TXTOLD = $0296 ;OLDROW & OLDCOL FOR TEXT (AND THEN SOME) +;TMPX1 = $029C ;##old## 1-byte temporary register +CRETRY = $029C ;##1200xl## 1-byte number of command frame retries +HOLD3 = $029D ;1-byte temporary +SUBTMP = $029E ;1-byte temporary +HOLD2 = $029F ;1-byte (not used) +DMASK = $02A0 ;1-byte display (pixel location) mask +TMPLBT = $02A1 ;1-byte (not used) +ESCFLG = $02A2 ;ESCAPE FLAG +TABMAP = $02A3 ;15-byte (120 bit) tab stop bit map +LOGMAP = $02B2 ;LOGICAL LINE START BIT MAP +INVFLG = $02B6 ;INVERSE VIDEO FLAG (TOGGLED BY ATARI KEY) +FILFLG = $02B7 ;RIGHT FILL FLAG FOR DRAW +TMPROW = $02B8 ;1-byte temporary row +TMPCOL = $02B9 ;2-byte temporary column +SCRFLG = $02BB ;SET IF SCROLL OCCURS +HOLD4 = $02BC ;TEMP CELL USED IN DRAW ONLY +;HOLD5 = $02BD ;##old## DITTO +DRETRY = $02BD ;##1200xl## 1-byte number of device retries +SHFLOK = $02BE ;1-byte shift/control lock flags +BOTSCR = $02BF ;BOTTOM OF SCREEN 24 NORM 4 SPLIT + +PCOLR0 = $02C0 ;1-byte player-missile 0 color/luminance +PCOLR1 = $02C1 ;1-byte player-missile 1 color/luminance +PCOLR2 = $02C2 ;1-byte player-missile 2 color/luminance +PCOLR3 = $02C3 ;1-byte player-missile 3 color/luminance + +COLOR0 = $02C4 ;1-byte playfield 0 color/luminance +COLOR1 = $02C5 ;1-byte playfield 1 color/luminance +COLOR2 = $02C6 ;1-byte playfield 2 color/luminance +COLOR3 = $02C7 ;1-byte playfield 3 color/luminance + +COLOR4 = $02C8 ;1-byte background color/luminance + +PARMBL = $02C9 ;##rev2## 6-byte relocating loader parameter +RUNADR = $02C9 ;##1200xl## 2-byte run address +HIUSED = $02CB ;##1200xl## 2-byte highest non-zero page address +ZHIUSE = $02CD ;##1200xl## 2-byte highest zero page address + +OLDPAR = $02CF ;##rev2## 6-byte relocating loader parameter +GBYTEA = $02CF ;##1200xl## 2-byte GET-BYTE routine address +LOADAD = $02D1 ;##1200xl## 2-byte non-zero page load address +ZLOADA = $02D3 ;##1200xl## 2-byte zero page load address + +DSCTLN = $02D5 ;##1200xl## 2-byte disk sector length +ACMISR = $02D7 ;##1200xl## 2-byte ACMI interrupt service routine +KRPDEL = $02D9 ;##1200xl## 1-byte auto-repeat delay +KEYREP = $02DA ;##1200xl## 1-byte auto-repeat rate +NOCLIK = $02DB ;##1200xl## 1-byte key click disable +HELPFG = $02DC ;##1200xl## 1-byte HELP key flag (0 = no HELP) +DMASAV = $02DD ;##1200xl## 1-byte SDMCTL save/restore +PBPNT = $02DE ;##1200xl## 1-byte printer buffer pointer +PBUFSZ = $02DF ;##1200xl## 1-byte printer buffer size + +GLBABS = $02E0 ;4-byte global variables for non-DOS users +RUNAD = $02E0 ;##map## 2-byte binary file run address +INITAD = $02E2 ;##map## 2-byte binary file initialization address + +RAMSIZ = $02E4 ;RAM SIZE (HI BYTE ONLY) +MEMTOP = $02E5 ;TOP OF AVAILABLE USER MEMORY +MEMLO = $02E7 ;BOTTOM OF AVAILABLE USER MEMORY +HNDLOD = $02E9 ;##1200xl## 1-byte user load flag +DVSTAT = $02EA ;STATUS BUFFER +CBAUDL = $02EE ;1-byte low cassette baud rate +CBAUDH = $02EF ;1-byte high cassette baud rate +CRSINH = $02F0 ;CURSOR INHIBIT (00 = CURSOR ON) +KEYDEL = $02F1 ;KEY DELAY +CH1 = $02F2 ;1-byte prior keyboard character +CHACT = $02F3 ;CHACTL REGISTER RAM +CHBAS = $02F4 ;CHBAS REGISTER RAM + +NEWROW = $02F5 ;##1200xl## 1-byte draw destination row +NEWCOL = $02F6 ;##1200xl## 2-byte draw destination column +ROWINC = $02F8 ;##1200xl## 1-byte draw row increment +COLINC = $02F9 ;##1200xl## 1-byte draw column increment + +CHAR = $02FA ;1-byte internal character +ATACHR = $02FB ;ATASCII CHARACTER +CH = $02FC ;GLOBAL VARIABLE FOR KEYBOARD +FILDAT = $02FD ;RIGHT FILL DATA +DSPFLG = $02FE ;DISPLAY FLAG DISPLAY CNTLS IF NON-ZERO +SSFLAG = $02FF ;START/STOP FLAG FOR PAGING (CNTL 1). CLEARE + +;------------------------------------------------------------------------- +; Page Three Address Equates +;------------------------------------------------------------------------- + +DCB = $0300 ;DEVICE CONTROL BLOCK +DDEVIC = $0300 ;PERIPHERAL UNIT 1 BUS I.D. NUMBER +DUNIT = $0301 ;UNIT NUMBER +DCOMND = $0302 ;BUS COMMAND +DSTATS = $0303 ;COMMAND TYPE/STATUS RETURN +DBUFLO = $0304 ;1-byte low data buffer address +DBUFHI = $0305 ;1-byte high data buffer address +DTIMLO = $0306 ;DEVICE TIME OUT IN 1 SECOND UNITS +DUNUSE = $0307 ;UNUSED BYTE +DBYTLO = $0308 ;1-byte low number of bytes to transfer +DBYTHI = $0309 ;1-byte high number of bytes to transfer +DAUX1 = $030A ;1-byte first command auxiliary +DAUX2 = $030B ;1-byte second command auxiliary + +TIMER1 = $030C ;INITIAL TIMER VALUE +;ADDCOR = $030E ;##old## ADDITION CORRECTION +JMPERS = $030E ;##1200xl## 1-byte jumper options +CASFLG = $030F ;CASSETTE MODE WHEN SET +TIMER2 = $0310 ;2-byte final baud rate timer value +TEMP1 = $0312 ;TEMPORARY STORAGE REGISTER +;TEMP2 = $0314 ;##old## TEMPORARY STORAGE REGISTER +TEMP2 = $0313 ;##1200xl## 1-byte temporary +PTIMOT = $0314 ;##1200xl## 1-byte printer timeout +TEMP3 = $0315 ;TEMPORARY STORAGE REGISTER +SAVIO = $0316 ;SAVE SERIAL IN DATA PORT +TIMFLG = $0317 ;TIME OUT FLAG FOR BAUD RATE CORRECTION +STACKP = $0318 ;SIO STACK POINTER SAVE CELL +TSTAT = $0319 ;TEMPORARY STATUS HOLDER + +HATABS = $031A ;35-byte handler address table (was 38 bytes) +PUPBT1 = $033D ;##1200xl## 1-byte power-up validation byte 1 +PUPBT2 = $033E ;##1200xl## 1-byte power-up validation byte 2 +PUPBT3 = $033F ;##1200xl## 1-byte power-up validation byte 3 + +IOCB = $0340 ;I/O CONTROL BLOCKS +ICHID = $0340 ;HANDLER INDEX NUMBER (FF=IOCB FREE) +ICDNO = $0341 ;DEVICE NUMBER (DRIVE NUMBER) +ICCOM = $0342 ;COMMAND CODE +ICSTA = $0343 ;STATUS OF LAST IOCB ACTION +ICBAL = $0344 ;1-byte low buffer address +ICBAH = $0345 ;1-byte high buffer address +ICPTL = $0346 ;1-byte low PUT-BYTE routine address - 1 +ICPTH = $0347 ;1-byte high PUT-BYTE routine address - 1 +ICBLL = $0348 ;1-byte low buffer length +ICBLH = $0349 ;1-byte high buffer length +ICAX1 = $034A ;1-byte first auxiliary information +ICAX2 = $034B ;1-byte second auxiliary information +ICAX3 = $034C ;1-byte third auxiliary information +ICAX4 = $034D ;1-byte fourth auxiliary information +ICAX5 = $034E ;1-byte fifth auxiliary information +ICSPR = $034F ;SPARE BYTE + +PRNBUF = $03C0 ;PRINTER BUFFER +SUPERF = $03E8 ;##1200xl## 1-byte editor super function flag +CKEY = $03E9 ;##1200xl## 1-byte cassette boot request flag +CASSBT = $03EA ;##1200xl## 1-byte cassette boot flag +CARTCK = $03EB ;##1200xl## 1-byte cartridge equivalence check +DERRF = $03EC ;##rev2## 1-byte screen OPEN error flag + +; Remainder of Page Three Not Cleared upon Reset + +ACMVAR = $03ED ;##1200xl## 11 bytes reserved for ACMI +BASICF = $03F8 ;##rev2## 1-byte BASIC switch flag +MINTLK = $03F9 ;##1200xl## 1-byte ACMI module interlock +GINTLK = $03FA ;##1200xl## 1-byte cartridge interlock +CHLINK = $03FB ;##1200xl## 2-byte loaded handler chain link +CASBUF = $03FD ;CASSETTE BUFFER + +;------------------------------------------------------------------------- +; Page Four/Five Address Equates +;------------------------------------------------------------------------- + +; USER AREA STARTS HERE AND GOES TO END OF PAGE FIVE +USAREA = $0480 ;128 bytes reserved for application + +LBPR1 = $057E ;LBUFF PREFIX 1 +LBPR2 = $057F ;LBUFF PREFIX 2 +LBUFF = $0580 ;128-byte line buffer + +PLYARG = $05E0 ;6-byte floating point polynomial argument +FPSCR = $05E6 ;6-byte floating point temporary +FPSCR1 = $05EC ;6-byte floating point temporary + +;LBFEND = $05FF ;##old## END OF LBUFF + + +DOS = $0700 + +;------------------------------------------------------------------------- +; SpartaDOS-X Definitions +;------------------------------------------------------------------------- + +SDX_FLAG = DOS ; 'S' for SpartaDOS +SDX_VERSION = $0701 ; SD version (e.g. $32 = 3.2, $40 = 4.0) + ; address $0702 contains sub-version, e.g. + ; 8 in case of SDX 4.48 +SDX_KERNEL = $0703 ; SDX kernel entry point +SDX_BLOCK_IO = $0706 ; block I/O entry point +SDX_MISC = $0709 ; "misc" entry point +SDX_DEVICE = $0761 +SDX_DATE = $077B ; day, month, year (3 bytes) +SDX_TIME = $077E ; hour, min, sec (3 bytes) +SDX_DATESET = $0781 +SDX_PATH = $07A0 ; 64 bytes +SDX_IFSYMBOL = $07EB ; only valid on SDX 4.40 or newer +SDX_S_LOOKUP = SDX_IFSYMBOL ; alternative name for SDX_IFSYMBOL + +; values for SDX_DEVICE + +SDX_CLK_DEV = $10 ; clock device + +; clock device functions + +SDX_KD_GETTD = 100 ; get time and date +SDX_KD_SETTD = 101 ; set time and date + +;------------------------------------------------------------------------- +; Cartridge Address Equates +;------------------------------------------------------------------------- + +CARTCS = $BFFA ;##rev2## 2-byte cartridge coldstart address +CART = $BFFC ;##rev2## 1-byte cartridge present indicator + ;0=Cart Exists +CARTFG = $BFFD ;##rev2## 1-byte cartridge flags + ;D7 0=Not a Diagnostic Cart + ; 1=Is a Diagnostic cart and control is + ; given to cart before any OS is init. + ;D2 0=Init but Do not Start Cart + ; 1=Init and Start Cart + ;D0 0=Do not boot disk + ; 1=Boot Disk +CARTAD = $BFFE ;##rev2## 2-byte cartridge start vector + +;------------------------------------------------------------------------- +; CTIA/GTIA Address Equates +;------------------------------------------------------------------------- + +GTIA = $D000 ;CTIA/GTIA area +.include "atari_gtia.inc" + +;------------------------------------------------------------------------- +; PBI Address Equates +;------------------------------------------------------------------------- + +PBI = $D100 ;##rev2## parallel bus interface area + +; Read Addresses + +PDVI = $D1FF ;##rev2## parallel device IRQ status + +; Write Addresses + +PDVS = $D1FF ;##rev2## parallel device select + +;------------------------------------------------------------------------- +; POKEY Address Equates +;------------------------------------------------------------------------- + +POKEY = $D200 ;POKEY area +.include "atari_pokey.inc" + +; POKEY KBCODE Values + +KEY_NONE = $FF + +KEY_0 = $32 +KEY_1 = $1F +KEY_2 = $1E +KEY_3 = $1A +KEY_4 = $18 +KEY_5 = $1D +KEY_6 = $1B +KEY_7 = $33 +KEY_8 = $35 +KEY_9 = $30 + +KEY_A = $3F +KEY_B = $15 +KEY_C = $12 +KEY_D = $3A +KEY_E = $2A +KEY_F = $38 +KEY_G = $3D +KEY_H = $39 +KEY_I = $0D +KEY_J = $01 +KEY_K = $05 +KEY_L = $00 +KEY_M = $25 +KEY_N = $23 +KEY_O = $08 +KEY_P = $0A +KEY_Q = $2F +KEY_R = $28 +KEY_S = $3E +KEY_T = $2D +KEY_U = $0B +KEY_V = $10 +KEY_W = $2E +KEY_X = $16 +KEY_Y = $2B +KEY_Z = $17 + +KEY_COMMA = $20 +KEY_PERIOD = $22 +KEY_SLASH = $26 +KEY_SEMICOLON = $02 +KEY_PLUS = $06 +KEY_ASTERISK = $07 +KEY_DASH = $0E +KEY_EQUALS = $0F +KEY_LESSTHAN = $36 +KEY_GREATERTHAN = $37 + +KEY_ESC = $1C +KEY_TAB = $2C +KEY_SPACE = $21 +KEY_RETURN = $0C +KEY_DELETE = $34 +KEY_CAPS = $3C +KEY_INVERSE = $27 +KEY_HELP = $11 + +KEY_F1 = $03 +KEY_F2 = $04 +KEY_F3 = $13 +KEY_F4 = $14 + +KEY_SHIFT = $40 +KEY_CTRL = $80 + +; Composed keys + +KEY_EXCLAMATIONMARK = KEY_1 | KEY_SHIFT +KEY_QUOTE = KEY_2 | KEY_SHIFT +KEY_HASH = KEY_3 | KEY_SHIFT +KEY_DOLLAR = KEY_4 | KEY_SHIFT +KEY_PERCENT = KEY_5 | KEY_SHIFT +KEY_AMPERSAND = KEY_6 | KEY_SHIFT +KEY_APOSTROPHE = KEY_7 | KEY_SHIFT +KEY_AT = KEY_8 | KEY_SHIFT +KEY_OPENINGPARAN = KEY_9 | KEY_SHIFT +KEY_CLOSINGPARAN = KEY_0 | KEY_SHIFT +KEY_UNDERLINE = KEY_DASH | KEY_SHIFT +KEY_BAR = KEY_EQUALS | KEY_SHIFT +KEY_COLON = KEY_SEMICOLON | KEY_SHIFT +KEY_BACKSLASH = KEY_PLUS | KEY_SHIFT +KEY_CIRCUMFLEX = KEY_ASTERISK | KEY_SHIFT +KEY_OPENINGBRACKET = KEY_COMMA | KEY_SHIFT +KEY_CLOSINGBRACKET = KEY_PERIOD | KEY_SHIFT +KEY_QUESTIONMARK = KEY_SLASH | KEY_SHIFT +KEY_CLEAR = KEY_LESSTHAN | KEY_SHIFT +KEY_INSERT = KEY_GREATERTHAN | KEY_SHIFT + +KEY_UP = KEY_DASH | KEY_CTRL +KEY_DOWN = KEY_EQUALS | KEY_CTRL +KEY_LEFT = KEY_PLUS | KEY_CTRL +KEY_RIGHT = KEY_ASTERISK | KEY_CTRL + +;------------------------------------------------------------------------- +; ANTIC Address Equates +;------------------------------------------------------------------------- + +ANTIC = $D400 ;ANTIC area +.include "atari_antic.inc" + +; PBI RAM Address Equates + +PBIRAM = $D600 ;##rev2## parallel bus interface RAM area + +; Parallel Device Address Equates + +PDID1 = $D803 ;##rev2## parallel device ID 1 +PDIDV = $D805 ;##rev2## parallel device I/O vector +PDIRQV = $D808 ;##rev2## parallel device IRQ vector +PDID2 = $D80B ;##rev2## parallel device ID 2 +PDVV = $D80D ;##rev2## parallel device vector table + +;------------------------------------------------------------------------- +; PIA Address Equates +;------------------------------------------------------------------------- + +PIA = $D300 ;PIA area + +PORTA = $D300 ;port A direction register or jacks one/two +PORTB = $D301 ;port B direction register or memory management + +PACTL = $D302 ;port A control +PBCTL = $D303 ;port B control + +;------------------------------------------------------------------------- +; Floating Point Package Address Equates +;------------------------------------------------------------------------- + +AFP = $D800 ;convert ASCII to floating point +FASC = $D8E6 ;convert floating point to ASCII +IFP = $D9AA ;convert integer to floating point +FPI = $D9D2 ;convert floating point to integer +ZFR0 = $DA44 ;zero FR0 +ZF1 = $DA46 ;zero floating point number +FSUB = $DA60 ;subtract floating point numbers +FADD = $DA66 ;add floating point numbers +FMUL = $DADB ;multiply floating point numbers +FDIV = $DB28 ;divide floating point numbers +PLYEVL = $DD40 ;evaluate floating point polynomial +FLD0R = $DD89 ;load floating point number +FLD0P = $DD8D ;load floating point number +FLD1R = $DD98 ;load floating point number +PLD1P = $DD9C ;load floating point number +FST0R = $DDA7 ;store floating point number +FST0P = $DDAB ;store floating point number +FMOVE = $DDB6 ;move floating point number +LOG = $DECD ;calculate floating point logarithm +LOG10 = $DED1 ;calculate floating point base 10 logarithm +EXP = $DDC0 ;calculate floating point exponential +EXP10 = $DDCC ;calculate floating point base 10 exponential + +;------------------------------------------------------------------------- +; Device Handler Vector Table Address Equates +;------------------------------------------------------------------------- + +EDITRV = $E400 ;editor handler vector table +SCRENV = $E410 ;screen handler vector table +KEYBDV = $E420 ;keyboard handler vector table +PRINTV = $E430 ;printer handler vector table +CASETV = $E440 ;cassette handler vector table + +;------------------------------------------------------------------------- +; Jump Vector Address Equates +;------------------------------------------------------------------------- + +DISKIV = $E450 ;vector to initialize DIO +DSKINV = $E453 ;vector to DIO +.ifdef __ATARIXL__ +.ifndef SHRAM_HANDLERS +.import CIO_handler, SIO_handler, SETVBV_handler +.endif +.define CIOV CIO_handler +.define SIOV SIO_handler +.define SETVBV SETVBV_handler +CIOV_org = $E456 ;vector to CIO +SIOV_org = $E459 ;vector to SIO +SETVBV_org = $E45C ;vector to set VBLANK parameters +.else +CIOV = $E456 ;vector to CIO +SIOV = $E459 ;vector to SIO +SETVBV = $E45C ;vector to set VBLANK parameters +; aliases in order not to have to sprinkle common code with .ifdefs +CIOV_org = CIOV +SIOV_org = SIOV +SETVBV_org = SETVBV +.endif +SYSVBV = $E45F ;vector to process immediate VBLANK +XITVBV = $E462 ;vector to process deferred VBLANK +SIOINV = $E465 ;vector to initialize SIO +SENDEV = $E468 ;vector to enable SEND +INTINV = $E46B ;vector to initialize interrupt handler +CIOINV = $E46E ;vector to initialize CIO +BLKBDV = $E471 ;vector to power-up display +WARMSV = $E474 ;vector to warmstart +COLDSV = $E477 ;vector to coldstart +RBLOKV = $E47A ;vector to read cassette block +CSOPIV = $E47D ;vector to open cassette for input +VCTABL = $E480 ;RAM vector initial value table +PUPDIV = $E480 ;##rev2## vector to power-up display +SLFTSV = $E483 ;##rev2## vector to self-test +PHENTV = $E486 ;##rev2## vector to enter peripheral handler +PHUNLV = $E489 ;##rev2## vector to unlink peripheral handler +PHINIV = $E48C ;##rev2## vector to initialize peripheral handler +GPDVV = $E48F ;##rev2## generic parallel device handler vector + +; NOTE: OS rom self-test labels are not included in this file + +;------------------------------------------------------------------------- +; Some misc. stuff from the 400/800 rev.B source +;------------------------------------------------------------------------- + +; THE FOLLOWING ARE IN BASIC CARTRIDGE: +SIN = $BD81 ;FR0 <- SIN (FR0) DEGFLG (0=RAD,6=DEG) CARRY +COS = $BD73 ;FR0 <- COS (FR0) CARRY +ATAN = $BE43 ;FR0 <- ATAN(FR0) CARRY +SQR = $BEB1 ;FR0 <- ROOT(FR0) CARRY + +RADON = 0 ;INDICATES RADIANS +DEGON = 6 ;INDICATES DEGREES + +ASCZER = '0' ;ASCII ZERO +COLON = $3A ;ASCII COLON +CR = $9B ;SYSTEM EOL (CARRIAGE RETURN) + +;------------------------------------------------------------------------- +; 6502 +;------------------------------------------------------------------------- + +NMIVEC = $FFFA +RESVEC = $FFFC +IRQVEC = $FFFE + +;------------------------------------------------------------------------- +; BASIC +;------------------------------------------------------------------------- + +LOMEM = $80 ;2-byte low memory pointer +VNTP = $82 ;2-byte variable name table address +VNTD = $84 ;2-byte variable name table end + 1 +VVTP = $86 ;2-byte variable value table +STMTAB = $88 ;2-byte statement table address +STMCUR = $8A ;2-byte current statement pointer +STARP = $8C ;2-byte string and array table pointer +RUNSTK = $8E ;2-byte runtime stack address +BMEMTOP = $90 ;2-byte top of memory pointer +STOPLN = $BA ;2-byte stopped line number +ERRSAVE = $C3 ;1-byte error code +PTABW = $C9 ;1-byte tab width + +;------------------------------------------------------------------------- +; ATASCII CHARACTER DEFS +;------------------------------------------------------------------------- + +ATCLR = $7D ;CLEAR SCREEN CHARACTER +ATRUB = $7E ;BACK SPACE (RUBOUT) +ATTAB = $7F ;TAB +ATEOL = $9B ;END-OF-LINE +ATDELL = $9C ;delete line +ATINSL = $9D ;insert line +ATCTAB = $9E ;clear TAB +ATSTAB = $9F ;set TAB +ATBEL = $FD ;CONSOLE BELL +ATDEL = $FE ;delete char. +ATINS = $FF ;insert char. +ATURW = $1C ;UP-ARROW +ATDRW = $1D ;DOWN-ARROW +ATLRW = $1E ;LEFT-ARROW +ATRRW = $1F ;RIGHT-ARROW +ATESC = $1B ;ESCAPE + +;------------------------------------------------------------------------- +; OFFSETS INTO SECTSIZETAB (DIO functions) +;------------------------------------------------------------------------- + +sst_flag = 0 ; length 1 +sst_sectsize = 1 ; 2 +sst_driveno = 3 ; 1 (drive #) +sst_size = 4 ; size of one entry + ; if changed, adapt diopncls.s + +;------------------------------------------------------------------------- +; OFFSETS INTO dio_phys_pos +;------------------------------------------------------------------------- + +diopp_head = 0 ; head +diopp_track = 1 ; track / cylinder +diopp_sector = 3 ; sector +diopp_size = 5 ; size of structure + +;------------------------------------------------------------------------- +; VALUES for dos_type +;------------------------------------------------------------------------- + +SPARTADOS = 0 +REALDOS = 1 +BWDOS = 2 +OSADOS = 3 ; OS/A+ +XDOS = 4 +ATARIDOS = 5 +MYDOS = 6 +NODOS = 255 +; The DOSes with dos_type below or equal MAX_DOS_WITH_CMDLINE do support +; command line arguments. +MAX_DOS_WITH_CMDLINE = XDOS + +;------------------------------------------------------------------------- +; XDOS defines (version 2.4, taken from xdos24.pdf) +;------------------------------------------------------------------------- + +XOPT = $070B ; XDOS options +XCAR = $070C ; XDOS cartridge address (+ $70D) +XPAT = $086F ; XDOS bugfix and patch number +XVER = $0870 ; XDOS version number +XFILE = $087D ; XDOS filename buffer +XLINE = $0880 ; XDOS DUP input line +XGLIN = $0871 ; get line +XSKIP = $0874 ; skip parameter +.ifdef __ATARIXL__ +.ifndef SHRAM_HANDLERS +.import XMOVE_handler +.endif +.define XMOVE XMOVE_handler +XMOVE_org = $0877 ; move filename +.else +XMOVE = $0877 ; move filename +.endif +XGNUM = $087A ; get number + +;------------------------------------------------------------------------- +; End of atari.inc +;------------------------------------------------------------------------- diff --git a/cc65/asminc/atari.mac b/cc65/asminc/atari.mac new file mode 100644 index 0000000..952af87 --- /dev/null +++ b/cc65/asminc/atari.mac @@ -0,0 +1,65 @@ +; Convert characters to screen codes + +; Helper macro that converts and outputs one character +.macro _scrcode char + .if (char >= 0) .and (char <= 31) + .byte (char + 64) + .elseif (char >= 32) .and (char <= 95) + .byte (char - 32) + .elseif (char >= 96) .and (char <= 127) + .byte char + .elseif (char >= 128) .and (char <= 159) + .byte (char + 64) + .elseif (char >= 160) .and (char <= 223) + .byte (char - 32) + .elseif (char >= 224) .and (char <= 255) + .byte char + .else + .error "scrcode: Character constant out of range" + .endif +.endmacro + +.macro scrcode arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 + + ; Bail out if next argument is empty + .if .blank (arg1) + .exitmacro + .endif + + ; Check for a string + .if .match ({arg1}, "") + + ; Walk over all string chars + .repeat .strlen (arg1), i + _scrcode {.strat (arg1, i)} + .endrepeat + + ; Check for a number + .elseif .match (.left (1, {arg1}), 0) + + ; Just output the number + _scrcode arg1 + + ; Check for a character + .elseif .match (.left (1, {arg1}), 'a') + + ; Just output the character + _scrcode arg1 + + ; Check for an identifier + .elseif .match (.left (1, {arg1}), identifier) + + ; Just output the identifier + _scrcode arg1 + + ; Anything else is an error + .else + + .error "scrcode: invalid argument type" + + .endif + + ; Call the macro recursively with the remaining args + scrcode arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 +.endmacro + diff --git a/cc65/asminc/atari2600.inc b/cc65/asminc/atari2600.inc new file mode 100644 index 0000000..a20926d --- /dev/null +++ b/cc65/asminc/atari2600.inc @@ -0,0 +1,7 @@ +; Atari 2600 TIA & RIOT read / write registers +; +; Florent Flament (contact@florentflament.com), 2017 + +; TIA & RIOT registers mapping +.include "atari2600_tia.inc" +.include "atari2600_riot.inc" diff --git a/cc65/asminc/atari2600_riot.inc b/cc65/asminc/atari2600_riot.inc new file mode 100644 index 0000000..a2c6ef6 --- /dev/null +++ b/cc65/asminc/atari2600_riot.inc @@ -0,0 +1,20 @@ +; Atari 2600 RIOT read / write registers +; +; Source: DASM - vcs.h +; Details available in: Stella Programmer's Guide by Steve Wright +; +; Florent Flament (contact@florentflament.com), 2017 + +; Read registers +SWCHA := $0280 +SWACNT := $0281 +SWCHB := $0282 +SWBCNT := $0283 +INTIM := $0284 +TIMINT := $0285 + +; Write registers +TIM1T := $0294 +TIM8T := $0295 +TIM64T := $0296 +T1024T := $0297 diff --git a/cc65/asminc/atari2600_tia.inc b/cc65/asminc/atari2600_tia.inc new file mode 100644 index 0000000..57c27ad --- /dev/null +++ b/cc65/asminc/atari2600_tia.inc @@ -0,0 +1,69 @@ +; Atari 2600 TIA read / write registers +; +; Source: DASM - vcs.h +; Details available in: Stella Programmer's Guide by Steve Wright +; +; Florent Flament (contact@florentflament.com), 2017 + +; Read registers +VSYNC := $00 +VBLANK := $01 +WSYNC := $02 +RSYNC := $03 +NUSIZ0 := $04 +NUSIZ1 := $05 +COLUP0 := $06 +COLUP1 := $07 +COLUPF := $08 +COLUBK := $09 +CTRLPF := $0A +REFP0 := $0B +REFP1 := $0C +PF0 := $0D +PF1 := $0E +PF2 := $0F +RESP0 := $10 +RESP1 := $11 +RESM0 := $12 +RESM1 := $13 +RESBL := $14 +AUDC0 := $15 +AUDC1 := $16 +AUDF0 := $17 +AUDF1 := $18 +AUDV0 := $19 +AUDV1 := $1A +GRP0 := $1B +GRP1 := $1C +ENAM0 := $1D +ENAM1 := $1E +ENABL := $1F +HMP0 := $20 +HMP1 := $21 +HMM0 := $22 +HMM1 := $23 +HMBL := $24 +VDELP0 := $25 +VDELP1 := $26 +VDELBL := $27 +RESMP0 := $28 +RESMP1 := $29 +HMOVE := $2A +HMCLR := $2B +CXCLR := $2C + +; Write registers +CXM0P := $00 +CXM1P := $01 +CXP0FB := $02 +CXP1FB := $03 +CXM0FB := $04 +CXM1FB := $05 +CXBLPF := $06 +CXPPMM := $07 +INPT0 := $08 +INPT1 := $09 +INPT2 := $0A +INPT3 := $0B +INPT4 := $0C +INPT5 := $0D diff --git a/cc65/asminc/atari5200.inc b/cc65/asminc/atari5200.inc new file mode 100644 index 0000000..b560c06 --- /dev/null +++ b/cc65/asminc/atari5200.inc @@ -0,0 +1,133 @@ +;------------------------------------------------------------------------- +; Atari 5200 System Equates +; by Christian Groessler +; taken from EQUATES.INC from Atari Inc. +;------------------------------------------------------------------------- + +;------------------------------------------------------------------------- +; ATASCII CHARACTER DEFS +;------------------------------------------------------------------------- + +ATEOL = $9B ; END-OF-LINE, used by CONIO + +;------------------------------------------------------------------------- +; CONIO CHARACTER DEFS +;------------------------------------------------------------------------- + +CH_ULCORNER = $0B ; '+' sign +CH_URCORNER = $0B +CH_LLCORNER = $0B +CH_LRCORNER = $0B +CH_HLINE = $0D ; dash +CH_VLINE = $01 ; exclamation mark + +;------------------------------------------------------------------------- +; Zero Page +;------------------------------------------------------------------------- + +POKMSK = $00 ; Mask for Pokey IRQ enable +RTCLOK = $01 ; 60 hz. clock +JUMP = $01 +CRITIC = $03 ; Critical section +ATRACT = $04 ; Attract Mode + +SDLSTL = $05 ; DLISTL Shadow +SDLSTH = $06 ; DLISTH " +SDMCTL = $07 ; DMACTL " + +PCOLR0 = $08 ; COLPM0 Shadow +PCOLR1 = $09 ; COLPM1 " +PCOLR2 = $0A ; COLPM2 " +PCOLR3 = $0B ; COLPM3 " + +COLOR0 = $0C ; COLPF0 Shadow +COLOR1 = $0D ; COLPF1 " +COLOR2 = $0E ; COLPF2 " +COLOR3 = $0F ; COLPF3 " +COLOR4 = $10 ; COLBK " + +PADDL0 = $11 ; POT0 Shadow +PADDL1 = $12 ; POT1 " +PADDL2 = $13 ; POT2 " +PADDL3 = $14 ; POT3 " +PADDL4 = $15 ; POT4 " +PADDL5 = $16 ; POT5 " +PADDL6 = $17 ; POT6 " +PADDL7 = $18 ; POT7 " + +; cc65 runtime zero page variables + +ROWCRS_5200 = $19 +COLCRS_5200 = $1A +SAVMSC = $1B ; pointer to screen memory (conio) + +;------------------------------------------------------------------------- +; Page #2 +;------------------------------------------------------------------------- + +;Interrupt Vectors + +VIMIRQ = $0200 ; Immediate IRQ + ; Preset $FC03 (SYSIRQ) +VVBLKI = $0202 ; Vblank immediate + ; Preset $FCB8 (SYSVBL) +VVBLKD = $0204 ; Vblank deferred + ; Preset $FCB2 (XITVBL) +VDSLST = $0206 ; Display List + ; Preset $FEA1 (OSDLI) +VKYBDI = $0208 ; Keyboard immediate + ; Preset $FD02 (SYSKBD) +VKYBDF = $020A ; Deferred Keyboard + ; Preset $FCB2 (XITVBL) +VTRIGR = $020C ; Soft Trigger +VBRKOP = $020E ; BRK Opcode +VSERIN = $0210 ; Serial in Ready +VSEROR = $0212 ; Serial Out Ready +VSEROC = $0214 ; Serial Output complete +VTIMR1 = $0216 ; Pokey Timer 1 +VTIMR2 = $0218 ; Pokey Timer 2 +VTIMR4 = $021A ; Pokey Timer 4 + + + +;------------------------------------------------------------------------- +; CTIA/GTIA Address Equates +;------------------------------------------------------------------------- + +GTIA = $C000 ; CTIA/GTIA area +.include "atari_gtia.inc" + +;------------------------------------------------------------------------- +; ANTIC Address Equates +;------------------------------------------------------------------------- + +ANTIC = $D400 ; ANTIC area +.include "atari_antic.inc" + +;------------------------------------------------------------------------- +; POKEY Address Equates +;------------------------------------------------------------------------- + +POKEY = $E800 ; POKEY area +.include "atari_pokey.inc" + +;------------------------------------------------------------------------- +; conio color defines +;------------------------------------------------------------------------- + +COLOR_WHITE = 0 +COLOR_RED = 1 +COLOR_GREEN = 2 +COLOR_BLACK = 3 + +;------------------------------------------------------------------------- +; Cartridge Parameters +;------------------------------------------------------------------------- + +CARTNM = $BFE8 ; Cartridge Name Area +COPYD = $BFFC ; Copyright Decade in Cart +COPYR = $BFFD ; Copyright Year in Cart + ; $FF=Diagnostic Cart +GOCART = $BFFE ; Cartridge Start Vector + +CHRORG = $F800 ; Character Generator Base diff --git a/cc65/asminc/atari7800.inc b/cc65/asminc/atari7800.inc new file mode 100644 index 0000000..0f109ba --- /dev/null +++ b/cc65/asminc/atari7800.inc @@ -0,0 +1,14 @@ +; Atari 7800 TIA & RIOT read / write registers +; +; Karri Kaksonen (karri@sipo.fi), 2022 + +; TIA, RIOT & MARIA registers mapping +.include "atari7800_tia.inc" +.include "atari7800_riot.inc" +.include "atari7800_maria.inc" + +; constants for the conio implementation +mono_charsperline = 40 +charsperline = 20 +screenrows = 28 + diff --git a/cc65/asminc/atari7800_maria.inc b/cc65/asminc/atari7800_maria.inc new file mode 100644 index 0000000..39624d2 --- /dev/null +++ b/cc65/asminc/atari7800_maria.inc @@ -0,0 +1,39 @@ +; Atari 7800 MARIA read / write registers +; + +; Read registers +BKGRND := $20 +P0C1 := $21 +P0C2 := $22 +P0C3 := $23 +MWSYNC := $24 +P1C1 := $25 +P1C2 := $26 +P1C3 := $27 +MSTAT := $28 +P2C1 := $29 +P2C2 := $2A +P2C3 := $2B +DPPH := $2C +P3C1 := $2D +P3C2 := $2E +P3C3 := $2F +DPPL := $30 +P4C1 := $31 +P4C2 := $32 +P4C3 := $33 +CHBASE := $34 +P5C1 := $35 +P5C2 := $36 +P5C3 := $37 +OFFSET := $38 +P6C1 := $39 +P6C2 := $3A +P6C3 := $3B +CTRL := $3C +P7C1 := $3D +P7C2 := $3E +P7C3 := $3F + +; Write registers + diff --git a/cc65/asminc/atari7800_riot.inc b/cc65/asminc/atari7800_riot.inc new file mode 100644 index 0000000..780e34d --- /dev/null +++ b/cc65/asminc/atari7800_riot.inc @@ -0,0 +1,20 @@ +; Atari 7800 RIOT read / write registers +; +; Source: DASM - vcs.h +; Details available in: Stella Programmer's Guide by Steve Wright +; +; Florent Flament (contact@florentflament.com), 2017 + +; Read registers +SWCHA := $0280 +CTLSWA := $0281 +SWCHB := $0282 +CTLSWB := $0283 +INTIM := $0284 +TIMINT := $0285 + +; Write registers +TIM1T := $0294 +TIM8T := $0295 +TIM64T := $0296 +T1024T := $0297 diff --git a/cc65/asminc/atari7800_tia.inc b/cc65/asminc/atari7800_tia.inc new file mode 100644 index 0000000..f4439e4 --- /dev/null +++ b/cc65/asminc/atari7800_tia.inc @@ -0,0 +1,69 @@ +; Atari 7800 TIA read / write registers +; +; Source: DASM - vcs.h +; Details available in: Stella Programmer's Guide by Steve Wright +; +; Florent Flament (contact@florentflament.com), 2017 + +; Read registers +VSYNC := $00 +VBLANK := $01 +WSYNC := $02 +RSYNC := $03 +NUSIZ0 := $04 +NUSIZ1 := $05 +COLUP0 := $06 +COLUP1 := $07 +COLUPF := $08 +COLUBK := $09 +CTRLPF := $0A +REFP0 := $0B +REFP1 := $0C +PF0 := $0D +PF1 := $0E +PF2 := $0F +RESP0 := $10 +RESP1 := $11 +RESM0 := $12 +RESM1 := $13 +RESBL := $14 +AUDC0 := $15 +AUDC1 := $16 +AUDF0 := $17 +AUDF1 := $18 +AUDV0 := $19 +AUDV1 := $1A +GRP0 := $1B +GRP1 := $1C +ENAM0 := $1D +ENAM1 := $1E +ENABL := $1F +HMP0 := $20 +HMP1 := $21 +HMM0 := $22 +HMM1 := $23 +HMBL := $24 +VDELP0 := $25 +VDELP1 := $26 +VDELBL := $27 +RESMP0 := $28 +RESMP1 := $29 +HMOVE := $2A +HMCLR := $2B +CXCLR := $2C + +; Write registers +CXM0P := $00 +CXM1P := $01 +CXP0FB := $02 +CXP1FB := $03 +CXM0FB := $04 +CXM1FB := $05 +CXBLPF := $06 +CXPPMM := $07 +INPT0 := $08 +INPT1 := $09 +INPT2 := $0A +INPT3 := $0B +INPT4 := $0C +INPT5 := $0D diff --git a/cc65/asminc/atari_antic.inc b/cc65/asminc/atari_antic.inc new file mode 100644 index 0000000..9a097e0 --- /dev/null +++ b/cc65/asminc/atari_antic.inc @@ -0,0 +1,95 @@ +;------------------------------------------------------------------------- +; ANTIC Address Equates +;------------------------------------------------------------------------- + +; Read Addresses + +VCOUNT = ANTIC + $0B ;vertical line counter +PENH = ANTIC + $0C ;light pen horizontal position +PENV = ANTIC + $0D ;light pen vertical position +NMIST = ANTIC + $0F ;NMI interrupt status + +; Write Addresses + +DMACTL = ANTIC + $00 ;DMA control +CHACTL = ANTIC + $01 ;character control +DLISTL = ANTIC + $02 ;low display list address +DLISTH = ANTIC + $03 ;high display list address +HSCROL = ANTIC + $04 ;horizontal scroll +VSCROL = ANTIC + $05 ;vertical scroll +PMBASE = ANTIC + $07 ;player-missile base address +CHBASE = ANTIC + $09 ;character base address +WSYNC = ANTIC + $0A ;wait for HBLANK synchronization +NMIEN = ANTIC + $0E ;NMI enable +NMIRES = ANTIC + $0F ;NMI interrupt reset + + +;------------------------------------------------------------------------- +; Antic opcodes +;------------------------------------------------------------------------- + +; usage example: +; +; ScreenDL: +; .byte DL_BLK8 +; .byte DL_BLK8 +; .byte DL_CHR40x8x1 | DL_LMS | DL_DLI +; .word ScreenAlignment +; .byte DL_BLK1 | DL_DLI +; .byte DL_MAP320x1x1 | DL_LMS +; .word Screen +; +; .repeat 99 +; .byte DL_MAP320x1x1 +; .endrepeat +; .byte DL_MAP320x1x1 | DL_LMS +; .word Screen + 40 * 100 ; 100 lines a 40 byte, 'Screen' has to be aligned correctly! +; .repeat 92 +; .byte DL_MAP320x1x1 +; .endrepeat +; +; .byte DL_JVB + +; absolute instructions (non mode lines) + +DL_JMP = 1 +DL_JVB = 65 + +; DL_BLKn display n empty lines (just background) + +DL_BLK1 = 0 +DL_BLK2 = 16 +DL_BLK3 = 32 +DL_BLK4 = 48 +DL_BLK5 = 64 +DL_BLK6 = 80 +DL_BLK7 = 96 +DL_BLK8 = 112 + +; absolute instructions (mode lines) + +DL_CHR40x8x1 = 2 ; monochrome, 40 character & 8 scanlines per mode line (GR. 0) +DL_CHR40x10x1 = 3 ; monochrome, 40 character & 10 scanlines per mode line +DL_CHR40x8x4 = 4 ; colour, 40 character & 8 scanlines per mode line (GR. 12) +DL_CHR40x16x4 = 5 ; colour, 40 character & 16 scanlines per mode line (GR. 13) +DL_CHR20x8x2 = 6 ; colour (duochrome per character), 20 character & 8 scanlines per mode line (GR. 1) +DL_CHR20x16x2 = 7 ; colour (duochrome per character), 20 character & 16 scanlines per mode line (GR. 2) + +DL_MAP40x8x4 = 8 ; colour, 40 pixel & 8 scanlines per mode line (GR. 3) +DL_MAP80x4x2 = 9 ; 'duochrome', 80 pixel & 4 scanlines per mode line (GR.4) +DL_MAP80x4x4 = 10 ; colour, 80 pixel & 4 scanlines per mode line (GR.5) +DL_MAP160x2x2 = 11 ; 'duochrome', 160 pixel & 2 scanlines per mode line (GR.6) +DL_MAP160x1x2 = 12 ; 'duochrome', 160 pixel & 1 scanline per mode line (GR.14) +DL_MAP160x2x4 = 13 ; 4 colours, 160 pixel & 2 scanlines per mode line (GR.7) +DL_MAP160x1x4 = 14 ; 4 colours, 160 pixel & 1 scanline per mode line (GR.15) +DL_MAP320x1x1 = 15 ; monochrome, 320 pixel & 1 scanline per mode line (GR.8) + +; modifiers on mode lines... + +DL_HSCROL = 16 +DL_VSCROL = 32 +DL_LMS = 64 + +; general modifier... + +DL_DLI = 128 diff --git a/cc65/asminc/atari_atascii_charmap.inc b/cc65/asminc/atari_atascii_charmap.inc new file mode 100644 index 0000000..7c6b5e5 --- /dev/null +++ b/cc65/asminc/atari_atascii_charmap.inc @@ -0,0 +1,301 @@ +;/*****************************************************************************/ +;/* */ +;/* atari_atascii_charmap.inc */ +;/* */ +;/* Atari system standard string mapping ISO-8859-1 -> AtASCII */ +;/* */ +;/* */ +;/* */ +;/* C 2016 Christian Krueger */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + +.charmap $00, $00 +.charmap $01, $01 +.charmap $02, $02 +.charmap $03, $03 +.charmap $04, $04 +.charmap $05, $05 +.charmap $06, $06 +.charmap $07, $FD +.charmap $08, $08 +.charmap $09, $7F +.charmap $0A, $9B +.charmap $0B, $0B +.charmap $0C, $7D +.charmap $0D, $0D +.charmap $0E, $0E +.charmap $0F, $0F + +.charmap $10, $10 +.charmap $11, $11 +.charmap $12, $12 +.charmap $13, $13 +.charmap $14, $14 +.charmap $15, $15 +.charmap $16, $16 +.charmap $17, $17 +.charmap $18, $18 +.charmap $19, $19 +.charmap $1A, $1A +.charmap $1B, $1B +.charmap $1C, $1C +.charmap $1D, $1D +.charmap $1E, $1E +.charmap $1F, $1F + +.charmap $20, $20 +.charmap $21, $21 +.charmap $22, $22 +.charmap $23, $23 +.charmap $24, $24 +.charmap $25, $25 +.charmap $26, $26 +.charmap $27, $27 +.charmap $28, $28 +.charmap $29, $29 +.charmap $2A, $2A +.charmap $2B, $2B +.charmap $2C, $2C +.charmap $2D, $2D +.charmap $2E, $2E +.charmap $2F, $2F + +.charmap $30, $30 +.charmap $31, $31 +.charmap $32, $32 +.charmap $33, $33 +.charmap $34, $34 +.charmap $35, $35 +.charmap $36, $36 +.charmap $37, $37 +.charmap $38, $38 +.charmap $39, $39 +.charmap $3A, $3A +.charmap $3B, $3B +.charmap $3C, $3C +.charmap $3D, $3D +.charmap $3E, $3E +.charmap $3F, $3F + +.charmap $40, $40 +.charmap $41, $41 +.charmap $42, $42 +.charmap $43, $43 +.charmap $44, $44 +.charmap $45, $45 +.charmap $46, $46 +.charmap $47, $47 +.charmap $48, $48 +.charmap $49, $49 +.charmap $4A, $4A +.charmap $4B, $4B +.charmap $4C, $4C +.charmap $4D, $4D +.charmap $4E, $4E +.charmap $4F, $4F + +.charmap $50, $50 +.charmap $51, $51 +.charmap $52, $52 +.charmap $53, $53 +.charmap $54, $54 +.charmap $55, $55 +.charmap $56, $56 +.charmap $57, $57 +.charmap $58, $58 +.charmap $59, $59 +.charmap $5A, $5A +.charmap $5B, $5B +.charmap $5C, $5C +.charmap $5D, $5D +.charmap $5E, $5E +.charmap $5F, $5F + +.charmap $60, $60 +.charmap $61, $61 +.charmap $62, $62 +.charmap $63, $63 +.charmap $64, $64 +.charmap $65, $65 +.charmap $66, $66 +.charmap $67, $67 +.charmap $68, $68 +.charmap $69, $69 +.charmap $6A, $6A +.charmap $6B, $6B +.charmap $6C, $6C +.charmap $6D, $6D +.charmap $6E, $6E +.charmap $6F, $6F + +.charmap $70, $70 +.charmap $71, $71 +.charmap $72, $72 +.charmap $73, $73 +.charmap $74, $74 +.charmap $75, $75 +.charmap $76, $76 +.charmap $77, $77 +.charmap $78, $78 +.charmap $79, $79 +.charmap $7A, $7A +.charmap $7B, $7B +.charmap $7C, $7C +.charmap $7D, $7D +.charmap $7E, $7E +.charmap $7F, $7F + +.charmap $80, $80 +.charmap $81, $81 +.charmap $82, $82 +.charmap $83, $83 +.charmap $84, $84 +.charmap $85, $85 +.charmap $86, $86 +.charmap $87, $87 +.charmap $88, $88 +.charmap $89, $89 +.charmap $8A, $8A +.charmap $8B, $8B +.charmap $8C, $8C +.charmap $8D, $8D +.charmap $8E, $8E +.charmap $8F, $8F + +.charmap $90, $90 +.charmap $91, $91 +.charmap $92, $92 +.charmap $93, $93 +.charmap $94, $94 +.charmap $95, $95 +.charmap $96, $96 +.charmap $97, $97 +.charmap $98, $98 +.charmap $99, $99 +.charmap $9A, $9A +.charmap $9B, $9B +.charmap $9C, $9C +.charmap $9D, $9D +.charmap $9E, $9E +.charmap $9F, $9F + +.charmap $A0, $A0 +.charmap $A1, $A1 +.charmap $A2, $A2 +.charmap $A3, $A3 +.charmap $A4, $A4 +.charmap $A5, $A5 +.charmap $A6, $A6 +.charmap $A7, $A7 +.charmap $A8, $A8 +.charmap $A9, $A9 +.charmap $AA, $AA +.charmap $AB, $AB +.charmap $AC, $AC +.charmap $AD, $AD +.charmap $AE, $AE +.charmap $AF, $AF + +.charmap $B0, $B0 +.charmap $B1, $B1 +.charmap $B2, $B2 +.charmap $B3, $B3 +.charmap $B4, $B4 +.charmap $B5, $B5 +.charmap $B6, $B6 +.charmap $B7, $B7 +.charmap $B8, $B8 +.charmap $B9, $B9 +.charmap $BA, $BA +.charmap $BB, $BB +.charmap $BC, $BC +.charmap $BD, $BD +.charmap $BE, $BE +.charmap $BF, $BF + +.charmap $C0, $C0 +.charmap $C1, $C1 +.charmap $C2, $C2 +.charmap $C3, $C3 +.charmap $C4, $C4 +.charmap $C5, $C5 +.charmap $C6, $C6 +.charmap $C7, $C7 +.charmap $C8, $C8 +.charmap $C9, $C9 +.charmap $CA, $CA +.charmap $CB, $CB +.charmap $CC, $CC +.charmap $CD, $CD +.charmap $CE, $CE +.charmap $CF, $CF + +.charmap $D0, $D0 +.charmap $D1, $D1 +.charmap $D2, $D2 +.charmap $D3, $D3 +.charmap $D4, $D4 +.charmap $D5, $D5 +.charmap $D6, $D6 +.charmap $D7, $D7 +.charmap $D8, $D8 +.charmap $D9, $D9 +.charmap $DA, $DA +.charmap $DB, $DB +.charmap $DC, $DC +.charmap $DD, $DD +.charmap $DE, $DE +.charmap $DF, $DF + +.charmap $E0, $E0 +.charmap $E1, $E1 +.charmap $E2, $E2 +.charmap $E3, $E3 +.charmap $E4, $E4 +.charmap $E5, $E5 +.charmap $E6, $E6 +.charmap $E7, $E7 +.charmap $E8, $E8 +.charmap $E9, $E9 +.charmap $EA, $EA +.charmap $EB, $EB +.charmap $EC, $EC +.charmap $ED, $ED +.charmap $EE, $EE +.charmap $EF, $EF + +.charmap $F0, $F0 +.charmap $F1, $F1 +.charmap $F2, $F2 +.charmap $F3, $F3 +.charmap $F4, $F4 +.charmap $F5, $F5 +.charmap $F6, $F6 +.charmap $F7, $F7 +.charmap $F8, $F8 +.charmap $F9, $F9 +.charmap $FA, $FA +.charmap $FB, $FB +.charmap $FC, $FC +.charmap $FD, $FD +.charmap $FE, $FE +.charmap $FF, $FF diff --git a/cc65/asminc/atari_gtia.inc b/cc65/asminc/atari_gtia.inc new file mode 100644 index 0000000..dd1c877 --- /dev/null +++ b/cc65/asminc/atari_gtia.inc @@ -0,0 +1,119 @@ +;------------------------------------------------------------------------- +; CTIA/GTIA Address Equates +;------------------------------------------------------------------------- + +; Read/Write Addresses + +CONSOL = GTIA + $1F ;console switches and speaker control + +; Read Addresses + +M0PF = GTIA + $00 ;missile 0 and playfield collision +M1PF = GTIA + $01 ;missile 1 and playfield collision +M2PF = GTIA + $02 ;missile 2 and playfield collision +M3PF = GTIA + $03 ;missile 3 and playfield collision + +P0PF = GTIA + $04 ;player 0 and playfield collision +P1PF = GTIA + $05 ;player 1 and playfield collision +P2PF = GTIA + $06 ;player 2 and playfield collision +P3PF = GTIA + $07 ;player 3 and playfield collision + +M0PL = GTIA + $08 ;missile 0 and player collision +M1PL = GTIA + $09 ;missile 1 and player collision +M2PL = GTIA + $0A ;missile 2 and player collision +M3PL = GTIA + $0B ;missile 3 and player collision + +P0PL = GTIA + $0C ;player 0 and player collision +P1PL = GTIA + $0D ;player 1 and player collision +P2PL = GTIA + $0E ;player 2 and player collision +P3PL = GTIA + $0F ;player 3 and player collision + +TRIG0 = GTIA + $10 ;joystick trigger 0 +TRIG1 = GTIA + $11 ;joystick trigger 1 + +TRIG2 = GTIA + $12 ;cartridge interlock +TRIG3 = GTIA + $13 ;ACMI module interlock + +PAL = GTIA + $14 ;##rev2## PAL/NTSC indicator + +; Write Addresses + +HPOSP0 = GTIA + $00 ;player 0 horizontal position +HPOSP1 = GTIA + $01 ;player 1 horizontal position +HPOSP2 = GTIA + $02 ;player 2 horizontal position +HPOSP3 = GTIA + $03 ;player 3 horizontal position + +HPOSM0 = GTIA + $04 ;missile 0 horizontal position +HPOSM1 = GTIA + $05 ;missile 1 horizontal position +HPOSM2 = GTIA + $06 ;missile 2 horizontal position +HPOSM3 = GTIA + $07 ;missile 3 horizontal position + +SIZEP0 = GTIA + $08 ;player 0 size +SIZEP1 = GTIA + $09 ;player 1 size +SIZEP2 = GTIA + $0A ;player 2 size +SIZEP3 = GTIA + $0B ;player 3 size + +SIZEM = GTIA + $0C ;missile sizes + +GRAFP0 = GTIA + $0D ;player 0 graphics +GRAFP1 = GTIA + $0E ;player 1 graphics +GRAFP2 = GTIA + $0F ;player 2 graphics +GRAFP3 = GTIA + $10 ;player 3 graphics + +GRAFM = GTIA + $11 ;missile graphics + +COLPM0 = GTIA + $12 ;player-missile 0 color/luminance +COLPM1 = GTIA + $13 ;player-missile 1 color/luminance +COLPM2 = GTIA + $14 ;player-missile 2 color/luminance +COLPM3 = GTIA + $15 ;player-missile 3 color/luminance + +COLPF0 = GTIA + $16 ;playfield 0 color/luminance +COLPF1 = GTIA + $17 ;playfield 1 color/luminance +COLPF2 = GTIA + $18 ;playfield 2 color/luminance +COLPF3 = GTIA + $19 ;playfield 3 color/luminance + +COLBK = GTIA + $1A ;background color/luminance + +PRIOR = GTIA + $1B ;priority select +VDELAY = GTIA + $1C ;vertical delay +GRACTL = GTIA + $1D ;graphic control +HITCLR = GTIA + $1E ;collision clear + + +; Hue values + +HUE_GREY = 0 +HUE_GOLD = 1 +HUE_GOLDORANGE = 2 +HUE_REDORANGE = 3 +HUE_ORANGE = 4 +HUE_MAGENTA = 5 +HUE_PURPLE = 6 +HUE_BLUE = 7 +HUE_BLUE2 = 8 +HUE_CYAN = 9 +HUE_BLUEGREEN = 10 +HUE_BLUEGREEN2 = 11 +HUE_GREEN = 12 +HUE_YELLOWGREEN = 13 +HUE_YELLOW = 14 +HUE_YELLOWRED = 15 + +; Color defines, similar to c64 colors (untested) + +GTIA_COLOR_BLACK = (HUE_GREY << 4) +GTIA_COLOR_WHITE = (HUE_GREY << 4 | 7 << 1) +GTIA_COLOR_RED = (HUE_REDORANGE << 4 | 1 << 1) +GTIA_COLOR_CYAN = (HUE_CYAN << 4 | 3 << 1) +GTIA_COLOR_VIOLET = (HUE_PURPLE << 4 | 4 << 1) +GTIA_COLOR_GREEN = (HUE_GREEN << 4 | 2 << 1) +GTIA_COLOR_BLUE = (HUE_BLUE << 4 | 2 << 1) +GTIA_COLOR_YELLOW = (HUE_YELLOW << 4 | 7 << 1) +GTIA_COLOR_ORANGE = (HUE_ORANGE << 4 | 5 << 1) +GTIA_COLOR_BROWN = (HUE_YELLOW << 4 | 2 << 1) +GTIA_COLOR_LIGHTRED = (HUE_REDORANGE << 4 | 6 << 1) +GTIA_COLOR_GRAY1 = (HUE_GREY << 4 | 2 << 1) +GTIA_COLOR_GRAY2 = (HUE_GREY << 4 | 3 << 1) +GTIA_COLOR_LIGHTGREEN = (HUE_GREEN << 4 | 6 << 1) +GTIA_COLOR_LIGHTBLUE = (HUE_BLUE << 4 | 6 << 1) +GTIA_COLOR_GRAY3 = (HUE_GREY << 4 | 5 << 1) diff --git a/cc65/asminc/atari_pokey.inc b/cc65/asminc/atari_pokey.inc new file mode 100644 index 0000000..4174865 --- /dev/null +++ b/cc65/asminc/atari_pokey.inc @@ -0,0 +1,43 @@ +;------------------------------------------------------------------------- +; POKEY Address Equates +;------------------------------------------------------------------------- + +; Read Addresses + +POT0 = POKEY + $00 ;potentiometer 0 +POT1 = POKEY + $01 ;potentiometer 1 +POT2 = POKEY + $02 ;potentiometer 2 +POT3 = POKEY + $03 ;potentiometer 3 +POT4 = POKEY + $04 ;potentiometer 4 +POT5 = POKEY + $05 ;potentiometer 5 +POT6 = POKEY + $06 ;potentiometer 6 +POT7 = POKEY + $07 ;potentiometer 7 + +ALLPOT = POKEY + $08 ;potentiometer port status +KBCODE = POKEY + $09 ;keyboard code +RANDOM = POKEY + $0A ;random number generator +SERIN = POKEY + $0D ;serial port input +IRQST = POKEY + $0E ;IRQ interrupt status +SKSTAT = POKEY + $0F ;serial port and keyboard status + +; Write Addresses + +AUDF1 = POKEY + $00 ;channel 1 audio frequency +AUDC1 = POKEY + $01 ;channel 1 audio control + +AUDF2 = POKEY + $02 ;channel 2 audio frequency +AUDC2 = POKEY + $03 ;channel 2 audio control + +AUDF3 = POKEY + $04 ;channel 3 audio frequency +AUDC3 = POKEY + $05 ;channel 3 audio control + +AUDF4 = POKEY + $06 ;channel 4 audio frequency +AUDC4 = POKEY + $07 ;channel 4 audio control + +AUDCTL = POKEY + $08 ;audio control +STIMER = POKEY + $09 ;start timers +SKRES = POKEY + $0A ;reset SKSTAT status +POTGO = POKEY + $0B ;start potentiometer scan sequence +SEROUT = POKEY + $0D ;serial port output +IRQEN = POKEY + $0E ;IRQ interrupt enable +SKCTL = POKEY + $0F ;serial port and keyboard control diff --git a/cc65/asminc/atari_screen_charmap.inc b/cc65/asminc/atari_screen_charmap.inc new file mode 100644 index 0000000..193ea06 --- /dev/null +++ b/cc65/asminc/atari_screen_charmap.inc @@ -0,0 +1,303 @@ +;/*****************************************************************************/ +;/* */ +;/* atari_screen_charmap.inc */ +;/* */ +;/* Atari system internal string mapping ISO-8859-1 -> Internal/Screen-Code */ +;/* */ +;/* */ +;/* */ +;/* C 2016 Christian Krueger */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + +.charmap $00, $40 +.charmap $01, $41 +.charmap $02, $42 +.charmap $03, $43 +.charmap $04, $44 +.charmap $05, $45 +.charmap $06, $46 +.charmap $07, $FD +.charmap $08, $48 +.charmap $09, $7F +.charmap $0A, $DB +.charmap $0B, $4B +.charmap $0C, $7D +.charmap $0D, $4D +.charmap $0E, $4E +.charmap $0F, $4F + +.charmap $10, $50 +.charmap $11, $51 +.charmap $12, $52 +.charmap $13, $53 +.charmap $14, $54 +.charmap $15, $55 +.charmap $16, $56 +.charmap $17, $57 +.charmap $18, $58 +.charmap $19, $59 +.charmap $1A, $5A +.charmap $1B, $5B +.charmap $1C, $5C +.charmap $1D, $5D +.charmap $1E, $5E +.charmap $1F, $5F + +.charmap $20, $00 + +.charmap $21, $01 +.charmap $22, $02 +.charmap $23, $03 +.charmap $24, $04 +.charmap $25, $05 +.charmap $26, $06 +.charmap $27, $07 +.charmap $28, $08 +.charmap $29, $09 +.charmap $2A, $0A +.charmap $2B, $0B +.charmap $2C, $0C +.charmap $2D, $0D +.charmap $2E, $0E +.charmap $2F, $0F + +.charmap $30, $10 +.charmap $31, $11 +.charmap $32, $12 +.charmap $33, $13 +.charmap $34, $14 +.charmap $35, $15 +.charmap $36, $16 +.charmap $37, $17 +.charmap $38, $18 +.charmap $39, $19 +.charmap $3A, $1A +.charmap $3B, $1B +.charmap $3C, $1C +.charmap $3D, $1D +.charmap $3E, $1E +.charmap $3F, $1F + +.charmap $40, $20 +.charmap $41, $21 +.charmap $42, $22 +.charmap $43, $23 +.charmap $44, $24 +.charmap $45, $25 +.charmap $46, $26 +.charmap $47, $27 +.charmap $48, $28 +.charmap $49, $29 +.charmap $4A, $2A +.charmap $4B, $2B +.charmap $4C, $2C +.charmap $4D, $2D +.charmap $4E, $2E +.charmap $4F, $2F + +.charmap $50, $30 +.charmap $51, $31 +.charmap $52, $32 +.charmap $53, $33 +.charmap $54, $34 +.charmap $55, $35 +.charmap $56, $36 +.charmap $57, $37 +.charmap $58, $38 +.charmap $59, $39 +.charmap $5A, $3A +.charmap $5B, $3B +.charmap $5C, $3C +.charmap $5D, $3D +.charmap $5E, $3E +.charmap $5F, $3F + +.charmap $60, $60 +.charmap $61, $61 +.charmap $62, $62 +.charmap $63, $63 +.charmap $64, $64 +.charmap $65, $65 +.charmap $66, $66 +.charmap $67, $67 +.charmap $68, $68 +.charmap $69, $69 +.charmap $6A, $6A +.charmap $6B, $6B +.charmap $6C, $6C +.charmap $6D, $6D +.charmap $6E, $6E +.charmap $6F, $6F + +.charmap $70, $70 +.charmap $71, $71 +.charmap $72, $72 +.charmap $73, $73 +.charmap $74, $74 +.charmap $75, $75 +.charmap $76, $76 +.charmap $77, $77 +.charmap $78, $78 +.charmap $79, $79 +.charmap $7A, $7A +.charmap $7B, $7B +.charmap $7C, $7C +.charmap $7D, $7D +.charmap $7E, $7E +.charmap $7F, $7F + +.charmap $80, $C0 +.charmap $81, $C1 +.charmap $82, $C2 +.charmap $83, $C3 +.charmap $84, $C4 +.charmap $85, $C5 +.charmap $86, $C6 +.charmap $87, $C7 +.charmap $88, $C8 +.charmap $89, $C9 +.charmap $8A, $CA +.charmap $8B, $CB +.charmap $8C, $CC +.charmap $8D, $CD +.charmap $8E, $CE +.charmap $8F, $CF + +.charmap $90, $D0 +.charmap $91, $D1 +.charmap $92, $D2 +.charmap $93, $D3 +.charmap $94, $D4 +.charmap $95, $D5 +.charmap $96, $D6 +.charmap $97, $D7 +.charmap $98, $D8 +.charmap $99, $D9 +.charmap $9A, $DA +.charmap $9B, $DB +.charmap $9C, $DC +.charmap $9D, $DD +.charmap $9E, $DE +.charmap $9F, $DF + +.charmap $A0, $80 +.charmap $A1, $81 +.charmap $A2, $82 +.charmap $A3, $83 +.charmap $A4, $84 +.charmap $A5, $85 +.charmap $A6, $86 +.charmap $A7, $87 +.charmap $A8, $88 +.charmap $A9, $89 +.charmap $AA, $8A +.charmap $AB, $8B +.charmap $AC, $8C +.charmap $AD, $8D +.charmap $AE, $8E +.charmap $AF, $8F + +.charmap $B0, $90 +.charmap $B1, $91 +.charmap $B2, $92 +.charmap $B3, $93 +.charmap $B4, $94 +.charmap $B5, $95 +.charmap $B6, $96 +.charmap $B7, $97 +.charmap $B8, $98 +.charmap $B9, $99 +.charmap $BA, $9A +.charmap $BB, $9B +.charmap $BC, $9C +.charmap $BD, $9D +.charmap $BE, $9E +.charmap $BF, $9F + +.charmap $C0, $A0 +.charmap $C1, $A1 +.charmap $C2, $A2 +.charmap $C3, $A3 +.charmap $C4, $A4 +.charmap $C5, $A5 +.charmap $C6, $A6 +.charmap $C7, $A7 +.charmap $C8, $A8 +.charmap $C9, $A9 +.charmap $CA, $AA +.charmap $CB, $AB +.charmap $CC, $AC +.charmap $CD, $AD +.charmap $CE, $AE +.charmap $CF, $AF + +.charmap $D0, $B0 +.charmap $D1, $B1 +.charmap $D2, $B2 +.charmap $D3, $B3 +.charmap $D4, $B4 +.charmap $D5, $B5 +.charmap $D6, $B6 +.charmap $D7, $B7 +.charmap $D8, $B8 +.charmap $D9, $B9 +.charmap $DA, $BA +.charmap $DB, $BB +.charmap $DC, $BC +.charmap $DD, $BD +.charmap $DE, $BE +.charmap $DF, $BF + +.charmap $E0, $E0 +.charmap $E1, $E1 +.charmap $E2, $E2 +.charmap $E3, $E3 +.charmap $E4, $E4 +.charmap $E5, $E5 +.charmap $E6, $E6 +.charmap $E7, $E7 +.charmap $E8, $E8 +.charmap $E9, $E9 +.charmap $EA, $EA +.charmap $EB, $EB +.charmap $EC, $EC +.charmap $ED, $ED +.charmap $EE, $EE +.charmap $EF, $EF + +.charmap $F0, $F0 +.charmap $F1, $F1 +.charmap $F2, $F2 +.charmap $F3, $F3 +.charmap $F4, $F4 +.charmap $F5, $F5 +.charmap $F6, $F6 +.charmap $F7, $F7 +.charmap $F8, $F8 +.charmap $F9, $F9 +.charmap $FA, $FA +.charmap $FB, $FB +.charmap $FC, $FC +.charmap $FD, $FD +.charmap $FE, $FE +.charmap $FF, $FF + diff --git a/cc65/asminc/atmos.inc b/cc65/asminc/atmos.inc new file mode 100644 index 0000000..8edcf7d --- /dev/null +++ b/cc65/asminc/atmos.inc @@ -0,0 +1,117 @@ +; +; Oric Atmos definitions +; BASIC 1.1 addresses +; + + +; --------------------------------------------------------------------------- +; Constants + +SCREEN_XSIZE = 40 ; screen columns +SCREEN_YSIZE = 28 ; screen rows + +FUNCTKEY = $A5 + +FNAME_LEN = 16 ; maximum length of file-name + + +; --------------------------------------------------------------------------- +; Zero page + +SCRPTR := $12 +BASIC_BUF := $35 +CHARGOT := $E8 +TXTPTR := $E9 + + +; --------------------------------------------------------------------------- +; Low memory + +MODEKEY := $0209 +CAPSLOCK := $020C ; $7F = not locked, $FF = locked +PATTERN := $0213 +IRQVec := $0245 ; "fast" interrupt vector +JOINFLAG := $025A ; 0 = don't joiu, $4A = join BASIC programs +VERIFYFLAG := $025B ; 0 = load, 1 = verify +CURS_Y := $0268 +CURS_X := $0269 +STATUS := $026A +BACKGRND := $026B +FOREGRND := $026C +TIMER3 := $0276 +CFILE_NAME := $027F +CFOUND_NAME := $0293 +FILESTART := $02A9 +FILEEND := $02AB +AUTORUN := $02AD ; $00 = only load, $C7 = autorun +LANGFLAG := $02AE ; $00 = BASIC, $80 = machine code +LOADERR := $02B1 +KEYBUF := $02DF +PARMERR := $02E0 +PARAM1 := $02E1 ; & $02E2 +PARAM2 := $02E3 ; & $02E4 +PARAM3 := $02E5 ; & $02E6 +BANGVEC := $02F5 + + +; --------------------------------------------------------------------------- +; I/O locations + +; 6522 +.struct VIA ; Versatile Interface Adapter + .res $0300 +PRB .byte ; Port Register B +PRA .byte ; Port Register A +DDRB .byte ; Data Direction Register B +DDRA .byte ; Data Direction Register A +T1 .word ; Timer 1 +T1L .word ; Timer 1 Latch +T2 .word ; Timer 2 +SR .byte ; Shift Register +ACR .byte ; Auxiliary Control Register +PCR .byte ; Peripheral Control Register +IFR .byte ; Interrupt Flags Register +IER .byte ; Interrupt Enable Register +PRA2 .byte ; Port Register A without handshaking +.endstruct + +; 6551 +.struct ACIA ; Asynchronous Communications Interface Adapter + .res $031C +DATA .byte +STATUS .byte +CMD .byte ; Command register +CTRL .byte ; Control register +.endstruct + +SCREEN := $BB80 + + +; --------------------------------------------------------------------------- +; ROM entries + +GETLINE := $C592 +TEXT := $EC21 +HIRES := $EC33 +CURSET := $F0C8 +CURMOV := $F0FD +DRAW := $F110 +CHAR := $F12D +POINT := $F1C8 +PAPER := $F204 +INK := $F210 +PRINT := $F77C + +; Sound Effects +PING := $FA9F +PING1 := $FA85 +SHOOT := $FAB5 +SHOOT1 := $FA9B +EXPLODE := $FACB +EXPLODE1 := $FAB1 +ZAP := $FAE1 +ZAP1 := $FAC7 +TICK := $FB14 +TICK1 := $FAFA +TOCK := $FB2A +TOCK1 := $FB10 diff --git a/cc65/asminc/c128.inc b/cc65/asminc/c128.inc new file mode 100644 index 0000000..749b416 --- /dev/null +++ b/cc65/asminc/c128.inc @@ -0,0 +1,224 @@ +; +; C128 generic definitions. Stolen from Elite128 +; + + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +TXTPTR := $3D ; Pointer into BASIC source code +STATUS := $90 ; Kernal I/O completion status +TIME := $A0 ; 60HZ clock +FNAM_LEN := $B7 ; Length of filename +SECADR := $B9 ; Secondary address +DEVNUM := $BA ; Device number +FNAM := $BB ; Address of filename +FNAM_BANK := $C7 ; Bank for filename +KEY_COUNT := $D0 ; Number of keys in input buffer +FKEY_COUNT := $D1 ; Characters for function key +MODE := $D7 ; 40-/80-column mode (bit 7: 80 columns) +GRAPHM := $D8 ; Graphics mode flags (bits 5-7) +CHARDIS := $D9 ; Bit 2 shadow for location $01 +CURS_X := $EC ; Cursor column +CURS_Y := $EB ; Cursor row +SCREEN_PTR := $E0 ; Pointer to current char in text screen +CRAM_PTR := $E2 ; Pointer to current char in color RAM + +CHARCOLOR := $F1 +RVS := $F3 ; Reverse output flag +SCROLL := $F8 ; Disable scrolling flag + +BASIC_BUF := $0200 ; Location of command-line +BASIC_BUF_LEN = 162 ; Maximum length of command-line + +FETCH := $02A2 ; Fetch subroutine in RAM +FETVEC := $02AA ; Vector patch location for FETCH +STASH := $02AF ; Stash routine in RAM +STAVEC := $02B9 ; Vector patch location for STASH +IRQInd := $02FD ; JMP $0000 -- used as indirect IRQ vector +PALFLAG := $0A03 ; $FF=PAL, $00=NTSC +INIT_STATUS := $0A04 ; Flags: Reset/Restore initiation status +VM2 := $0A2D ; VIC-IIe shadow for $D018 -- graphics mode +FKEY_LEN := $1000 ; Function key lengths +FKEY_TEXT := $100A ; Function key texts + +KBDREPEAT := $028a +KBDREPEATRATE := $028b +KBDREPEATDELAY := $028c + +; --------------------------------------------------------------------------- +; Vectors + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 +KeyStoreVec := $033C + +; --------------------------------------------------------------------------- +; I/O: VIC + +VIC := $D000 +VIC_SPR0_X := $D000 +VIC_SPR0_Y := $D001 +VIC_SPR1_X := $D002 +VIC_SPR1_Y := $D003 +VIC_SPR2_X := $D004 +VIC_SPR2_Y := $D005 +VIC_SPR3_X := $D006 +VIC_SPR3_Y := $D007 +VIC_SPR4_X := $D008 +VIC_SPR4_Y := $D009 +VIC_SPR5_X := $D00A +VIC_SPR5_Y := $D00B +VIC_SPR6_X := $D00C +VIC_SPR6_Y := $D00D +VIC_SPR7_X := $D00E +VIC_SPR7_Y := $D00F +VIC_SPR_HI_X := $D010 +VIC_SPR_ENA := $D015 +VIC_SPR_EXP_Y := $D017 +VIC_SPR_EXP_X := $D01D +VIC_SPR_MCOLOR := $D01C +VIC_SPR_BG_PRIO := $D01B + +VIC_SPR_MCOLOR0 := $D025 +VIC_SPR_MCOLOR1 := $D026 + +VIC_SPR0_COLOR := $D027 +VIC_SPR1_COLOR := $D028 +VIC_SPR2_COLOR := $D029 +VIC_SPR3_COLOR := $D02A +VIC_SPR4_COLOR := $D02B +VIC_SPR5_COLOR := $D02C +VIC_SPR6_COLOR := $D02D +VIC_SPR7_COLOR := $D02E + +VIC_CTRL1 := $D011 +VIC_CTRL2 := $D016 + +VIC_HLINE := $D012 + +VIC_LPEN_X := $D013 +VIC_LPEN_Y := $D014 + +VIC_VIDEO_ADR := $D018 + +VIC_IRR := $D019 ; Interrupt request register +VIC_IMR := $D01A ; Interrupt mask register + +VIC_BORDERCOLOR := $D020 +VIC_BG_COLOR0 := $D021 +VIC_BG_COLOR1 := $D022 +VIC_BG_COLOR2 := $D023 +VIC_BG_COLOR3 := $D024 + +; 128 stuff: +VIC_KBD_128 := $D02F ; Extended kbd bits (visible in 64 mode) +VIC_CLK_128 := $D030 ; Clock rate register (visible in 64 mode) + + +; --------------------------------------------------------------------------- +; I/O: SID + +SID := $D400 +SID_S1Lo := $D400 +SID_S1Hi := $D401 +SID_PB1Lo := $D402 +SID_PB1Hi := $D403 +SID_Ctl1 := $D404 +SID_AD1 := $D405 +SID_SUR1 := $D406 + +SID_S2Lo := $D407 +SID_S2Hi := $D408 +SID_PB2Lo := $D409 +SID_PB2Hi := $D40A +SID_Ctl2 := $D40B +SID_AD2 := $D40C +SID_SUR2 := $D40D + +SID_S3Lo := $D40E +SID_S3Hi := $D40F +SID_PB3Lo := $D410 +SID_PB3Hi := $D411 +SID_Ctl3 := $D412 +SID_AD3 := $D413 +SID_SUR3 := $D414 + +SID_FltLo := $D415 +SID_FltHi := $D416 +SID_FltCtl := $D417 +SID_Amp := $D418 +SID_ADConv1 := $D419 +SID_ADConv2 := $D41A +SID_Noise := $D41B +SID_Read3 := $D41C + +; --------------------------------------------------------------------------- +; I/O: VDC (128 only) + +VDC_INDEX := $D600 ; register address port +VDC_DATA := $D601 ; data port + +; Registers +VDC_DATA_HI = 18 ; video RAM address (big endian) +VDC_DATA_LO = 19 +VDC_CSET = 28 +VDC_RAM_RW = 31 ; RAM port + +; --------------------------------------------------------------------------- +; I/O: Complex Interface Adapters + +CIA1 := $DC00 +CIA1_PRA := $DC00 ; Port A +CIA1_PRB := $DC01 ; Port B +CIA1_DDRA := $DC02 ; Data direction register for port A +CIA1_DDRB := $DC03 ; Data direction register for port B +CIA1_TA := $DC04 ; 16-bit timer A +CIA1_TB := $DC06 ; 16-bit timer B +CIA1_TOD10 := $DC08 ; Time-of-day tenths of a second +CIA1_TODSEC := $DC09 ; Time-of-day seconds +CIA1_TODMIN := $DC0A ; Time-of-day minutes +CIA1_TODHR := $DC0B ; Time-of-day hours +CIA1_SDR := $DC0C ; Serial data register +CIA1_ICR := $DC0D ; Interrupt control register +CIA1_CRA := $DC0E ; Control register for timer A +CIA1_CRB := $DC0F ; Control register for timer B + +CIA2 := $DD00 +CIA2_PRA := $DD00 +CIA2_PRB := $DD01 +CIA2_DDRA := $DD02 +CIA2_DDRB := $DD03 +CIA2_TA := $DD04 +CIA2_TB := $DD06 +CIA2_TOD10 := $DD08 +CIA2_TODSEC := $DD09 +CIA2_TODMIN := $DD0A +CIA2_TODHR := $DD0B +CIA2_SDR := $DD0C +CIA2_ICR := $DD0D +CIA2_CRA := $DD0E +CIA2_CRB := $DD0F + +; --------------------------------------------------------------------------- +; I/O: MMU + +MMU_CR := $FF00 +MMU_CFG_CC65 := %00001110 ; Bank 0 with kernal ROM +MMU_CFG_RAM0 := %00111111 ; Bank 0 full RAM +MMU_CFG_RAM1 := %01111111 ; Bank 1 full RAM +MMU_CFG_RAM2 := %10111111 ; Bank 2 full RAM +MMU_CFG_RAM3 := %11111111 ; Bank 3 full RAM +MMU_CFG_IFROM := %01010111 ; Bank 1 with Internal Function RAM/ROM +MMU_CFG_EFROM := %01101011 ; Bank 1 with External Function RAM/ROM + +; --------------------------------------------------------------------------- +; Super CPU + +SCPU_VIC_Bank1 := $D075 +SCPU_Slow := $D07A +SCPU_Fast := $D07B +SCPU_EnableRegs := $D07E +SCPU_DisableRegs:= $D07F +SCPU_Detect := $D0BC diff --git a/cc65/asminc/c16.inc b/cc65/asminc/c16.inc new file mode 100644 index 0000000..d99a3c7 --- /dev/null +++ b/cc65/asminc/c16.inc @@ -0,0 +1,9 @@ +; +; C16 generic definitions. +; +; The C16 and Plus/4 are identical, so just include the Plus/4 include file. + + +.include "plus4.inc" + + diff --git a/cc65/asminc/c64.inc b/cc65/asminc/c64.inc new file mode 100644 index 0000000..d131c78 --- /dev/null +++ b/cc65/asminc/c64.inc @@ -0,0 +1,219 @@ +; +; C64 generic definitions. Stolen from Elite128 +; + + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +VARTAB := $2D ; Pointer to start of BASIC variables +MEMSIZE := $37 ; Pointer to highest BASIC RAM location (+1) +TXTPTR := $7A ; Pointer into BASIC source code +STATUS := $90 ; Kernal I/O completion status +TIME := $A0 ; 60 HZ clock +FNAM_LEN := $B7 ; Length of filename +SECADR := $B9 ; Secondary address +DEVNUM := $BA ; Device number +FNAM := $BB ; Pointer to filename +KEY_COUNT := $C6 ; Number of keys in input buffer +RVS := $C7 ; Reverse flag +CURS_FLAG := $CC ; 1 = cursor off +CURS_BLINK := $CD ; Blink counter +CURS_CHAR := $CE ; Character under the cursor +CURS_STATE := $CF ; Cursor blink state +SCREEN_PTR := $D1 ; Pointer to current char in text screen +CURS_X := $D3 ; Cursor column +CURS_Y := $D6 ; Cursor row +CRAM_PTR := $F3 ; Pointer to current char in color RAM +FREKZP := $FB ; Five unused bytes + +BASIC_BUF := $200 ; Location of command-line +BASIC_BUF_LEN = 89 ; Maximum length of command-line + +CHARCOLOR := $286 +CURS_COLOR := $287 ; Color under the cursor +PALFLAG := $2A6 ; $01 = PAL, $00 = NTSC + +KBDREPEAT := $28a +KBDREPEATRATE := $28b +KBDREPEATDELAY := $28c + +; --------------------------------------------------------------------------- +; Vector and other locations + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 + +; --------------------------------------------------------------------------- +; Screen size + +XSIZE = 40 +YSIZE = 25 + +; --------------------------------------------------------------------------- +; I/O: VIC + +VIC := $D000 +VIC_SPR0_X := $D000 +VIC_SPR0_Y := $D001 +VIC_SPR1_X := $D002 +VIC_SPR1_Y := $D003 +VIC_SPR2_X := $D004 +VIC_SPR2_Y := $D005 +VIC_SPR3_X := $D006 +VIC_SPR3_Y := $D007 +VIC_SPR4_X := $D008 +VIC_SPR4_Y := $D009 +VIC_SPR5_X := $D00A +VIC_SPR5_Y := $D00B +VIC_SPR6_X := $D00C +VIC_SPR6_Y := $D00D +VIC_SPR7_X := $D00E +VIC_SPR7_Y := $D00F +VIC_SPR_HI_X := $D010 +VIC_SPR_ENA := $D015 +VIC_SPR_EXP_Y := $D017 +VIC_SPR_EXP_X := $D01D +VIC_SPR_MCOLOR := $D01C +VIC_SPR_BG_PRIO := $D01B +VIC_SPR_COLL := $D01E +VIC_SPR_BG_COLL := $D01F + +VIC_SPR_MCOLOR0 := $D025 +VIC_SPR_MCOLOR1 := $D026 + +VIC_SPR0_COLOR := $D027 +VIC_SPR1_COLOR := $D028 +VIC_SPR2_COLOR := $D029 +VIC_SPR3_COLOR := $D02A +VIC_SPR4_COLOR := $D02B +VIC_SPR5_COLOR := $D02C +VIC_SPR6_COLOR := $D02D +VIC_SPR7_COLOR := $D02E + +VIC_CTRL1 := $D011 +VIC_CTRL2 := $D016 + +VIC_HLINE := $D012 + +VIC_LPEN_X := $D013 +VIC_LPEN_Y := $D014 + +VIC_VIDEO_ADR := $D018 + +VIC_IRR := $D019 ; Interrupt request register +VIC_IMR := $D01A ; Interrupt mask register + +VIC_BORDERCOLOR := $D020 +VIC_BG_COLOR0 := $D021 +VIC_BG_COLOR1 := $D022 +VIC_BG_COLOR2 := $D023 +VIC_BG_COLOR3 := $D024 + +; 128 stuff: +VIC_KBD_128 := $D02F ; Extended kbd bits (visible in 64 mode) +VIC_CLK_128 := $D030 ; Clock rate register (visible in 64 mode) + + +; --------------------------------------------------------------------------- +; I/O: SID + +SID := $D400 +SID_S1Lo := $D400 +SID_S1Hi := $D401 +SID_PB1Lo := $D402 +SID_PB1Hi := $D403 +SID_Ctl1 := $D404 +SID_AD1 := $D405 +SID_SUR1 := $D406 + +SID_S2Lo := $D407 +SID_S2Hi := $D408 +SID_PB2Lo := $D409 +SID_PB2Hi := $D40A +SID_Ctl2 := $D40B +SID_AD2 := $D40C +SID_SUR2 := $D40D + +SID_S3Lo := $D40E +SID_S3Hi := $D40F +SID_PB3Lo := $D410 +SID_PB3Hi := $D411 +SID_Ctl3 := $D412 +SID_AD3 := $D413 +SID_SUR3 := $D414 + +SID_FltLo := $D415 +SID_FltHi := $D416 +SID_FltCtl := $D417 +SID_Amp := $D418 +SID_ADConv1 := $D419 +SID_ADConv2 := $D41A +SID_Noise := $D41B +SID_Read3 := $D41C + +; --------------------------------------------------------------------------- +; I/O: VDC (128 only) + +VDC_INDEX := $D600 +VDC_DATA := $D601 + +; --------------------------------------------------------------------------- +; I/O: Complex Interface Adapters + +CIA1 := $DC00 +CIA1_PRA := $DC00 ; Port A +CIA1_PRB := $DC01 ; Port B +CIA1_DDRA := $DC02 ; Data direction register for port A +CIA1_DDRB := $DC03 ; Data direction register for port B +CIA1_TA := $DC04 ; 16-bit timer A +CIA1_TB := $DC06 ; 16-bit timer B +CIA1_TOD10 := $DC08 ; Time-of-day tenths of a second +CIA1_TODSEC := $DC09 ; Time-of-day seconds +CIA1_TODMIN := $DC0A ; Time-of-day minutes +CIA1_TODHR := $DC0B ; Time-of-day hours +CIA1_SDR := $DC0C ; Serial data register +CIA1_ICR := $DC0D ; Interrupt control register +CIA1_CRA := $DC0E ; Control register for timer A +CIA1_CRB := $DC0F ; Control register for timer B + +CIA2 := $DD00 +CIA2_PRA := $DD00 +CIA2_PRB := $DD01 +CIA2_DDRA := $DD02 +CIA2_DDRB := $DD03 +CIA2_TA := $DD04 +CIA2_TB := $DD06 +CIA2_TOD10 := $DD08 +CIA2_TODSEC := $DD09 +CIA2_TODMIN := $DD0A +CIA2_TODHR := $DD0B +CIA2_SDR := $DD0C +CIA2_ICR := $DD0D +CIA2_CRA := $DD0E +CIA2_CRB := $DD0F + +; --------------------------------------------------------------------------- +; Super CPU + +SCPU_VIC_Bank1 := $D075 +SCPU_Slow := $D07A +SCPU_Fast := $D07B +SCPU_EnableRegs := $D07E +SCPU_DisableRegs:= $D07F +SCPU_Detect := $D0BC + + +; --------------------------------------------------------------------------- +; Processor Port at $01 + +LORAM = $01 ; Enable the basic rom +HIRAM = $02 ; Enable the kernal rom +IOEN = $04 ; Enable I/O +CASSDATA = $08 ; Cassette data +CASSPLAY = $10 ; Cassette: Play +CASSMOT = $20 ; Cassette motor on +TP_FAST = $80 ; Switch Rossmoeller TurboProcess to fast mode + +RAMONLY = $F8 ; (~(LORAM | HIRAM | IOEN)) & $FF diff --git a/cc65/asminc/c65.inc b/cc65/asminc/c65.inc new file mode 100644 index 0000000..ff3572f --- /dev/null +++ b/cc65/asminc/c65.inc @@ -0,0 +1,239 @@ + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +TXTPTR := $3C ; Pointer into BASIC source code +STATUS := $90 ; Kernal I/O completion status +FNAM_LEN := $B7 ; Length of filename +SECADR := $B9 ; Secondary address +DEVNUM := $BA ; Device number +FNAM := $BB ; Address of filename +FNAM_BANK := $BE ; Bank for filename +KEY_COUNT := $D0 ; Number of keys in input buffer +FKEY_COUNT := $D1 ; Characters for function key +MODE := $D7 ; 40-/80-column mode (bit 7: 80 columns) +GRAPHM := $D8 ; Graphics mode flags (bits 5-7) +CHARDIS := $D9 ; Bit 2 shadow for location $01 +CURS_X := $EC ; Cursor column +CURS_Y := $EB ; Cursor row +SCREEN_PTR := $E0 ; Pointer to current char in text screen +CRAM_PTR := $E2 ; Pointer to current char in color RAM +CHARCOLOR := $F1 +RVS := $F3 ; Reverse output flag +SCROLL := $F8 ; Disable scrolling flag + +BASIC_BUF := $0200 ; Location of command-line +BASIC_BUF_LEN = 161 ; Maximum length of command-line + +FKEY_LEN := $1000 ; Function key lengths +FKEY_TEXT := $100A ; Function key texts + +PALFLAG := $1103 ; $FF=PAL, $00=NTSC +INIT_STATUS := $1104 ; Flags: Reset/Restore initiation status +TIME := $110C ; 60HZ clock + +KBDREPEAT := $111a +KBDREPEATRATE := $111b +KBDREPEATDELAY := $111c + +; --------------------------------------------------------------------------- +; Vectors + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 + +; --------------------------------------------------------------------------- +; I/O: VIC + +VIC := $D000 +VIC_SPR0_X := $D000 +VIC_SPR0_Y := $D001 +VIC_SPR1_X := $D002 +VIC_SPR1_Y := $D003 +VIC_SPR2_X := $D004 +VIC_SPR2_Y := $D005 +VIC_SPR3_X := $D006 +VIC_SPR3_Y := $D007 +VIC_SPR4_X := $D008 +VIC_SPR4_Y := $D009 +VIC_SPR5_X := $D00A +VIC_SPR5_Y := $D00B +VIC_SPR6_X := $D00C +VIC_SPR6_Y := $D00D +VIC_SPR7_X := $D00E +VIC_SPR7_Y := $D00F +VIC_SPR_HI_X := $D010 +VIC_SPR_ENA := $D015 +VIC_SPR_EXP_Y := $D017 +VIC_SPR_EXP_X := $D01D +VIC_SPR_MCOLOR := $D01C +VIC_SPR_BG_PRIO := $D01B +VIC_SPR_COLL := $D01E +VIC_SPR_BG_COLL := $D01F + +VIC_SPR_MCOLOR0 := $D025 +VIC_SPR_MCOLOR1 := $D026 + +VIC_SPR0_COLOR := $D027 +VIC_SPR1_COLOR := $D028 +VIC_SPR2_COLOR := $D029 +VIC_SPR3_COLOR := $D02A +VIC_SPR4_COLOR := $D02B +VIC_SPR5_COLOR := $D02C +VIC_SPR6_COLOR := $D02D +VIC_SPR7_COLOR := $D02E + +VIC_CTRL1 := $D011 +VIC_CTRL2 := $D016 + +VIC_HLINE := $D012 + +VIC_LPEN_X := $D013 +VIC_LPEN_Y := $D014 + +VIC_VIDEO_ADR := $D018 + +VIC_IRR := $D019 ; Interrupt request register +VIC_IMR := $D01A ; Interrupt mask register + +VIC_BORDERCOLOR := $D020 +VIC_BG_COLOR0 := $D021 +VIC_BG_COLOR1 := $D022 +VIC_BG_COLOR2 := $D023 +VIC_BG_COLOR3 := $D024 + + +; --------------------------------------------------------------------------- +; I/O: FDC + +FDC := $D080 + +; --------------------------------------------------------------------------- +; I/O: SID + +SID1 := $D400 +SID1_S1Lo := $D400 +SID1_S1Hi := $D401 +SID1_PB1Lo := $D402 +SID1_PB1Hi := $D403 +SID1_Ctl1 := $D404 +SID1_AD1 := $D405 +SID1_SUR1 := $D406 + +SID1_S2Lo := $D407 +SID1_S2Hi := $D408 +SID1_PB2Lo := $D409 +SID1_PB2Hi := $D40A +SID1_Ctl2 := $D40B +SID1_AD2 := $D40C +SID1_SUR2 := $D40D + +SID1_S3Lo := $D40E +SID1_S3Hi := $D40F +SID1_PB3Lo := $D410 +SID1_PB3Hi := $D411 +SID1_Ctl3 := $D412 +SID1_AD3 := $D413 +SID1_SUR3 := $D414 + +SID1_FltLo := $D415 +SID1_FltHi := $D416 +SID1_FltCtl := $D417 +SID1_Amp := $D418 +SID1_ADConv1 := $D419 +SID1_ADConv2 := $D41A +SID1_Noise := $D41B +SID1_Read3 := $D41C + +SID2 := $D420 +SID2_S1Lo := $D420 +SID2_S1Hi := $D421 +SID2_PB1Lo := $D422 +SID2_PB1Hi := $D423 +SID2_Ctl1 := $D424 +SID2_AD1 := $D425 +SID2_SUR1 := $D426 + +SID2_S2Lo := $D427 +SID2_S2Hi := $D428 +SID2_PB2Lo := $D429 +SID2_PB2Hi := $D42A +SID2_Ctl2 := $D42B +SID2_AD2 := $D42C +SID2_SUR2 := $D42D + +SID2_S3Lo := $D42E +SID2_S3Hi := $D42F +SID2_PB3Lo := $D430 +SID2_PB3Hi := $D431 +SID2_Ctl3 := $D432 +SID2_AD3 := $D433 +SID2_SUR3 := $D434 + +SID2_FltLo := $D435 +SID2_FltHi := $D436 +SID2_FltCtl := $D437 +SID2_Amp := $D438 +SID2_ADConv1 := $D439 +SID2_ADConv2 := $D43A +SID2_Noise := $D43B +SID2_Read3 := $D43C + +; --------------------------------------------------------------------------- +; I/O: Complex Interface Adapters + +CIA1 := $DC00 +CIA1_PRA := $DC00 ; Port A +CIA1_PRB := $DC01 ; Port B +CIA1_DDRA := $DC02 ; Data direction register for port A +CIA1_DDRB := $DC03 ; Data direction register for port B +CIA1_TA := $DC04 ; 16-bit timer A +CIA1_TB := $DC06 ; 16-bit timer B +CIA1_TOD10 := $DC08 ; Time-of-day tenths of a second +CIA1_TODSEC := $DC09 ; Time-of-day seconds +CIA1_TODMIN := $DC0A ; Time-of-day minutes +CIA1_TODHR := $DC0B ; Time-of-day hours +CIA1_SDR := $DC0C ; Serial data register +CIA1_ICR := $DC0D ; Interrupt control register +CIA1_CRA := $DC0E ; Control register for timer A +CIA1_CRB := $DC0F ; Control register for timer B + +CIA2 := $DD00 +CIA2_PRA := $DD00 +CIA2_PRB := $DD01 +CIA2_DDRA := $DD02 +CIA2_DDRB := $DD03 +CIA2_TA := $DD04 +CIA2_TB := $DD06 +CIA2_TOD10 := $DD08 +CIA2_TODSEC := $DD09 +CIA2_TODMIN := $DD0A +CIA2_TODHR := $DD0B +CIA2_SDR := $DD0C +CIA2_ICR := $DD0D +CIA2_CRA := $DD0E +CIA2_CRB := $DD0F + +; --------------------------------------------------------------------------- +; I/O: DMA + +DMA := $D700 + + +; --------------------------------------------------------------------------- +; Processor Port at $01 + +LORAM = $01 ; Enable the basic rom +HIRAM = $02 ; Enable the kernal rom +IOEN = $04 ; Enable I/O +CASSDATA = $08 ; Cassette data +CASSPLAY = $10 ; Cassette: Play +CASSMOT = $20 ; Cassette motor on +TP_FAST = $80 ; Switch Rossmoeller TurboProcess to fast mode + +RAMONLY = $F8 ; (~(LORAM | HIRAM | IOEN)) & $FF + +; temporary, to get conio working +XSIZE = 80 +YSIZE = 50 diff --git a/cc65/asminc/cbm.mac b/cc65/asminc/cbm.mac new file mode 100644 index 0000000..5c542b2 --- /dev/null +++ b/cc65/asminc/cbm.mac @@ -0,0 +1,56 @@ +; Convert characters to screen codes + +; Macro that converts one character. +; scrbyte() can be used as an instruction operand +.define scrbyte(code) (<(.strat ("h@dbdlhh", code >> 5) << 4) ^ code) + +; Helper macro that stores one character +.macro _scrcode char + .if (char < 256) + .byte scrbyte {char} + .else + .error "scrcode: Character constant out of range" + .endif +.endmacro + +.macro scrcode arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 + + ; Bail out if next argument is empty + .if .blank ({arg1}) + .exitmacro + .endif + + ; Check for a string + .if .match ({arg1}, "") + + ; Walk over all string chars + .repeat .strlen (arg1), i + _scrcode {.strat (arg1, i)} + .endrepeat + + ; Check for a number + .elseif .match (.left (1, {arg1}), 0) + + ; Just output the number + _scrcode arg1 + + ; Check for a character + .elseif .match (.left (1, {arg1}), 'a') + + ; Just output the character + _scrcode arg1 + + ; Check for an identifier + .elseif .match (.left (1, {arg1}), identifier) + + ; Just output the identifier + _scrcode arg1 + + ; Anything else is an error + .else + .error "scrcode: invalid argument type" + .endif + + ; Call the macro recursively with the remaining args + scrcode arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 +.endmacro diff --git a/cc65/asminc/cbm510.inc b/cc65/asminc/cbm510.inc new file mode 100644 index 0000000..627ba49 --- /dev/null +++ b/cc65/asminc/cbm510.inc @@ -0,0 +1,200 @@ +; +; Zero page variables and I/O definitions for the CBM 510 +; +; Taken from a kernal disassembly done by myself in 2000/2001. +; +; 2001-09-13, Ullrich von Bassewitz +; 2014-04-02, Greg King + + +;----------------------------------------------------------------------------- +; Zeropage stuff + +ExecReg := $00 ; Controls execution memory bank +IndReg := $01 ; Controls indirect indexed load-store bank + +TXTPTR := $85 ; Far pointer into BASIC source code +FNAM := $90 ; Far pointer to LOAD/SAVE file-name +FNAM_SEG := $92 +STATUS := $9C ; Kernal I/O completion status +FNAM_LEN := $9D ; Holds length of file-name + +; --------------------------------------------------------------------------- +; Screen size + +XSIZE = 40 +YSIZE = 25 + +;----------------------------------------------------------------------------- +; I/O Definitions +; Note: These numbers aren't addresses. They are offsets from the start of +; each chip's register set. They are used in the indirect indexed addressing +; mode. + +; I/O $d800: VIC-II + +VIC_SPR0_X = $00 +VIC_SPR0_Y = $01 +VIC_SPR1_X = $02 +VIC_SPR1_Y = $03 +VIC_SPR2_X = $04 +VIC_SPR2_Y = $05 +VIC_SPR3_X = $06 +VIC_SPR3_Y = $07 +VIC_SPR4_X = $08 +VIC_SPR4_Y = $09 +VIC_SPR5_X = $0A +VIC_SPR5_Y = $0B +VIC_SPR6_X = $0C +VIC_SPR6_Y = $0D +VIC_SPR7_X = $0E +VIC_SPR7_Y = $0F +VIC_SPR_HI_X = $10 +VIC_SPR_ENA = $15 +VIC_SPR_EXP_Y = $17 +VIC_SPR_EXP_X = $1D +VIC_SPR_MCOLOR = $1C +VIC_SPR_BG_PRIO = $1B + +VIC_SPR_MCOLOR0 = $25 +VIC_SPR_MCOLOR1 = $26 + +VIC_SPR0_COLOR = $27 +VIC_SPR1_COLOR = $28 +VIC_SPR2_COLOR = $29 +VIC_SPR3_COLOR = $2A +VIC_SPR4_COLOR = $2B +VIC_SPR5_COLOR = $2C +VIC_SPR6_COLOR = $2D +VIC_SPR7_COLOR = $2E + +VIC_CTRL1 = $11 +VIC_CTRL2 = $16 + +VIC_HLINE = $12 + +VIC_LPEN_X = $13 +VIC_LPEN_Y = $14 + +VIC_VIDEO_ADR = $18 + +VIC_IRR = $19 ; Interrupt request register +VIC_IMR = $1A ; Interrupt mask register + +VIC_BORDERCOLOR = $20 +VIC_BG_COLOR0 = $21 +VIC_BG_COLOR1 = $22 +VIC_BG_COLOR2 = $23 +VIC_BG_COLOR3 = $24 + + +; I/O $da00: SID 6581 + +SID_S1Lo = $00 +SID_S1Hi = $01 +SID_PB1Lo = $02 +SID_PB1Hi = $03 +SID_Ctl1 = $04 +SID_AD1 = $05 +SID_SUR1 = $06 + +SID_S2Lo = $07 +SID_S2Hi = $08 +SID_PB2Lo = $09 +SID_PB2Hi = $0A +SID_Ctl2 = $0B +SID_AD2 = $0C +SID_SUR2 = $0D + +SID_S3Lo = $0E +SID_S3Hi = $0F +SID_PB3Lo = $10 +SID_PB3Hi = $11 +SID_Ctl3 = $12 +SID_AD3 = $13 +SID_SUR3 = $14 + +SID_FltLo = $15 +SID_FltHi = $16 +SID_FltCtl = $17 +SID_Amp = $18 +SID_ADConv1 = $19 +SID_ADConv2 = $1A +SID_Noise = $1B +SID_Read3 = $1C + + +; I/O $db00: CIA 6526, Inter Process Communication +; I/O $dc00: CIA 6526 + +.struct CIA + PRA .byte + PRB .byte + DDRA .byte + DDRB .byte + .union + .struct + TALO .byte + TAHI .byte + .endstruct + TA .word + .endunion + .union + .struct + TBLO .byte + TBHI .byte + .endstruct + TB .word + .endunion + TOD10 .byte + TODSEC .byte + TODMIN .byte + TODHR .byte + SDR .byte + ICR .byte + CRA .byte + CRB .byte +.endstruct + + +; I/O $dd00: ACIA 6551 + +.struct ACIA + DATA .byte + STATUS .byte + CMD .byte + CTRL .BYTE +.endstruct + + +; I/O $de00: Triport #1 6525 +; I/O $df00: Triport #2 6525 + +.struct TPI + PRA .byte + PRB .byte + .union + PRC .byte + INT .byte + .endunion + DDRA .byte + DDRB .byte + .union + DDRC .byte + IMR .byte + .endunion + CR .byte + AIR .byte +.endstruct + + +;----------------------------------------------------------------------------- +; Our video memory address + +COLOR_RAM := $D400 ; System bank + + +;----------------------------------------------------------------------------- + +BASIC_BUF := $FB5E ; Bank 0 location of command-line +BASIC_BUF_LEN = 162 ; Maximum length of command-line diff --git a/cc65/asminc/cbm610.inc b/cc65/asminc/cbm610.inc new file mode 100644 index 0000000..b031b2e --- /dev/null +++ b/cc65/asminc/cbm610.inc @@ -0,0 +1,121 @@ +; +; Zero page variables and I/O definitions for the CBM 610 +; +; Taken from a kernal disassembly done by myself in 1987. +; +; 1998-09-28, Ullrich von Bassewitz +; 2014-04-02, Greg King + + +; --------------------------------------------------------------------------- +; Zeropage stuff + +ExecReg := $00 ; Controls execution memory bank +IndReg := $01 ; Controls indirect indexed load-store bank + +TXTPTR := $85 ; Far pointer into BASIC source code +FNAM := $90 ; Far pointer to LOAD/SAVE file-name +FNAM_SEG := $92 +STATUS := $9C ; Kernal I/O completion status +FNAM_LEN := $9D ; Holds length of file-name + +; --------------------------------------------------------------------------- +; Screen size + +XSIZE = 80 +YSIZE = 25 + +; --------------------------------------------------------------------------- +; I/O definitions + + +; I/O $d800: CRTC 6545 + +.struct CRTC + ADDR .byte + DATA .byte +.endstruct + + +; I/O $db00: CIA 6526, Inter Process Communication +; +; IPCcia = $db00 + +.struct CIA + PRA .byte + PRB .byte + DDRA .byte + DDRB .byte + .union + .struct + TALO .byte + TAHI .byte + .endstruct + TA .word + .endunion + .union + .struct + TBLO .byte + TBHI .byte + .endstruct + TB .word + .endunion + TOD10 .byte + TODSEC .byte + TODMIN .byte + TODHR .byte + SDR .byte + ICR .byte + CRA .byte + CRB .byte +.endstruct + + +; I/O $dc00: CIA 6526 +; +; cia = $dc00 + + +; I/O $dd00: ACIA 6551 +; +; acia = $dd00 + +.struct ACIA + DATA .byte + STATUS .byte + CMD .byte + CTRL .BYTE +.endstruct + + +; I/O $de00: Triport #1 6525 +; +; tpi1 = $de00 + +.struct TPI + PRA .byte + PRB .byte + .union + PRC .byte + INT .byte + .endunion + DDRA .byte + DDRB .byte + .union + DDRC .byte + IMR .byte + .endunion + CR .byte + AIR .byte +.endstruct + + +; I/O $df00: Triport #2 6525 + +; tpi2 = $df00 + + +;----------------------------------------------------------------------------- + +BASIC_BUF := $FA5E ; Bank 1 location of command-line +BASIC_BUF_LEN = 162 ; Maximum length of command-line diff --git a/cc65/asminc/cbm_filetype.inc b/cc65/asminc/cbm_filetype.inc new file mode 100644 index 0000000..9e9ba24 --- /dev/null +++ b/cc65/asminc/cbm_filetype.inc @@ -0,0 +1,34 @@ +; +; Definitions for CBM file types. From cbm.h +; +; Ullrich von Bassewitz, 2012-06-03 +; + +; Define bitmapped constants for the table entries + +.enum + CBM_T_REG = $10 ; Bit set for regular files + CBM_T_SEQ = $10 ; Sequential file + CBM_T_PRG = $11 ; Program file + CBM_T_USR = $12 ; User file + CBM_T_REL = $13 ; Relative file + CBM_T_VRP = $14 ; Vorpal fast-loadable format + CBM_T_DEL = $00 ; Deleted file + CBM_T_CBM = $01 ; 1581 sub-partition + CBM_T_DIR = $02 ; IDE64 and CMD sub-directory + CBM_T_LNK = $03 ; IDE64 soft-link + CBM_T_OTHER = $04 ; File-type not recognized + CBM_T_HEADER = $05 ; Disk header / title +.endenum + + +; The following function maps the start character for a file type to +; one of the file types above. Note: 'd' will always mapped to CBM_T_DEL. +; The calling function has to look at the following character to determine +; if the file type is actually CBM_T_DIR. +; +; unsigned char __fastcall__ _cbm_filetype (unsigned char c); + + .global __cbm_filetype + + diff --git a/cc65/asminc/cbm_kernal.inc b/cc65/asminc/cbm_kernal.inc new file mode 100644 index 0000000..f06483a --- /dev/null +++ b/cc65/asminc/cbm_kernal.inc @@ -0,0 +1,248 @@ +; +; Olli Savia +; Greg King +; +; Commodore-compatibles Kernal functions +; + +.if .def(__CX16__) + ; CX16 extended jump table + KBDBUF_PEEK := $FEBD + KBDBUF_GET_MODIFIERS := $FEC0 + KBDBUF_PUT := $FEC3 + I2C_READ_BYTE := $FEC6 + I2C_WRITE_BYTE := $FEC9 + CX_MONITOR := $FECC + ENTROPY_GET := $FECF + CONSOLE_SET_PAGE_MSG := $FED5 + CONSOLE_PUT_IMAGE := $FED8 + CONSOLE_INIT := $FEDB + CONSOLE_PUT_CHAR := $FEDE + CONSOLE_GET_CHAR := $FEE1 + MEMORY_FILL := $FEE4 + MEMORY_COPY := $FEE7 + MEMORY_CRC := $FEEA + MEMORY_DECOMPRESS := $FEED + SPRITE_SET_IMAGE := $FEF0 + SPRITE_SET_POSITION := $FEF3 + FB_INIT := $FEF6 + FB_GET_INFO := $FEF9 + FB_SET_PALETTE := $FEFC + FB_CURSOR_POSITION := $FEFF + FB_CURSOR_NEXT_LINE := $FF02 + FB_GET_PIXEL := $FF05 + FB_GET_PIXELS := $FF08 + FB_SET_PIXEL := $FF0B + FB_SET_PIXELS := $FF0E + FB_SET_8_PIXELS := $FF11 + FB_SET_8_PIXELS_OPAQUE := $FF14 + FB_FILL_PIXELS := $FF17 + FB_FILTER_PIXELS := $FF1A + FB_MOVE_PIXELS := $FF1D + GRAPH_INIT := $FF20 + GRAPH_CLEAR := $FF23 + GRAPH_SET_WINDOW := $FF26 + GRAPH_SET_COLORS := $FF29 + GRAPH_DRAW_LINE := $FF2C + GRAPH_DRAW_RECT := $FF2F + GRAPH_MOVE_RECT := $FF32 + GRAPH_DRAW_OVAL := $FF35 + GRAPH_DRAW_IMAGE := $FF38 + GRAPH_SET_FONT := $FF3B + GRAPH_GET_CHAR_SIZE := $FF3E + GRAPH_PUT_CHAR := $FF41 + MULTI_ACPTR := $FF44 + RESTORE_BASIC := $FF47 + CLOCK_SET_DATE_TIME := $FF4D + CLOCK_GET_DATE_TIME := $FF50 + JOYSTICK_SCAN := $FF53 + JOYSTICK_GET := $FF56 + SCREEN_MODE := $FF5F + SCREEN_SET_CHARSET := $FF62 + MOUSE_CONFIG := $FF68 + MOUSE_GET := $FF6B +.endif + +.if .def (__MEGA65__) + ; extended C65 jump table + +; memory before $ff3b is all $ff in mega65 ROM? +; VERSIONQ := $FF2F +; RESET_RUN := $FF32 +; CURSOR := $FF35 + + SAVEFL := $FF3B + GETIO := $FF41 + GETLFS := $FF44 + KEYLOCKS := $FF47 + ADDKEY := $FF4A +.endif + +.if .def(__C65__) || .def (__MEGA65__) + CURSOR := $E030 ; in editor ROM + + SPIN_SPOUT := $FF4D + CLSALL := $FF50 + C64MODE := $FF53 + MonitorCall := $FF56 + BOOT_SYS := $FF59 + PHOENIX := $FF5C + LKUPLA := $FF5F + LKUPSA := $FF62 + SWAPPER := $FF65 + PFKEY := $FF68 + SETBNK := $FF6B + JSRFAR := $FF6E + JMPFAR := $FF71 + LDA_FAR := $FF74 + STA_FAR := $FF77 + CMP_FAR := $FF7A + PRIMM := $FF7D +.endif + +.if .def(__C128__) + ; C128 extended jump table + C64MODE := $FF4D + SWAPPER := $FF5F + SETBNK := $FF68 +.endif + +.if .def(__C128__) || .def(__CX16__) + ; Extended jump table + CLSALL := $FF4A + LKUPLA := $FF59 + LKUPSA := $FF5C + PFKEY := $FF65 + JSRFAR := $FF6E + INDFET := $FF74 + INDSTA := $FF77 + INDCMP := $FF7A + PRIMM := $FF7D +.endif + +.if .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__) || .def(__C65__) || .def (__MEGA65__) + CINT := $FF81 + IOINIT := $FF84 + RAMTAS := $FF87 +.elseif .def(__VIC20__) + 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. +.elseif .def(__CBM510__) || .def(__CBM610__) + IOINIT := $FF7B + CINT := $FF7E +.endif + +.if .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__) || .def(__C65__) || .def (__MEGA65__) + 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__) || .def(__CX16__) + SETMSG := $FF90 + SECOND := $FF93 + TKSA := $FF96 + MEMTOP := $FF99 + MEMBOT := $FF9C + SCNKEY := $FF9F + SETTMO := $FFA2 +.elseif .def(__C65__) || .def (__MEGA65__) + SETMSG := $FF90 + SECOND := $FF93 + TKSA := $FF96 + MEMTOP := $FF99 + MEMBOT := $FF9C + SCNKEY := $FF9F + MONEXIT := $FFA2 +.endif + +.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__) || .def(__C65__) || .def(__MEGA65__) + ACPTR := $FFA5 + CIOUT := $FFA8 + UNTLK := $FFAB + UNLSN := $FFAE + LISTEN := $FFB1 + TALK := $FFB4 + READST := $FFB7 + SETLFS := $FFBA + SETNAM := $FFBD + OPEN := $FFC0 + CLOSE := $FFC3 +.endif + +; Available on all platforms including PET +CHKIN := $FFC6 +CKOUT := $FFC9 +CHKOUT := $FFC9 +CLRCH := $FFCC +CLRCHN := $FFCC +BASIN := $FFCF +CHRIN := $FFCF +BSOUT := $FFD2 +CHROUT := $FFD2 + +.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__) || .def(__C65__) || .def(__MEGA65__) + LOAD := $FFD5 + SAVE := $FFD8 + SETTIM := $FFDB + RDTIM := $FFDE +.endif + +; Available on all platforms including PET +STOP := $FFE1 +GETIN := $FFE4 +CLALL := $FFE7 + +.if .def(__C65__) || .def(__MEGA65__) +ScanStopKey := $FFEA +.else +UDTIM := $FFEA +.endif + +.if .def(__CBM510__) || .def(__CBM610__) || .def(__VIC20__) || .def(__C64__) || .def(__C128__) || .def(__C16__) || .def(__CX16__) || .def(__C65__) || .def(__MEGA65__) + SCREEN := $FFED + PLOT := $FFF0 + IOBASE := $FFF3 +.endif + +; --------------------------------------------------------------------------- +; Kernal routines, direct entries +; +; Unlike the above, these are not standard functions with entries in the jump +; table. They do not exist in all Kernals, and where they do the entry point is +; specific to that particular machine and possibly even Kernal version. +; +; This list is not comprehensive: missing items for particular machines +; should be added as needed. +; +; UPDCRAMPTR: Updates the color RAM pointer to match the screen RAM pointer. +; + +.if .def(__VIC20__) + CLRSCR := $E55F + KBDREAD := $E5CF + UPDCRAMPTR := $EAB2 +.elseif .def(__C64__) + CLRSCR := $E544 ; Clear the screen + KBDREAD := $E5B4 ; Get Character From Keyboard Buffer + NMIEXIT := $FEBC + UPDCRAMPTR := $EA24 ; Update color ram pointer +.elseif .def(__C128__) + CLRSCR := $C142 + KBDREAD := $C006 + NMIEXIT := $FF33 + NEWLINE := $C363 + PRINT := $C322 + CURS_SET := $CD57 + CURS_ON := $CD6F + CURS_OFF := $CD9F +.elseif .def(__C16__) + CLRSCR := $D88B + KBDREAD := $D8C1 +.elseif .def(__C65__) || .def(__MEGA65__) +; CLRSCR := $E0EC ; ??? + KBDREAD := $E006 +.endif diff --git a/cc65/asminc/cbm_petscii_charmap.inc b/cc65/asminc/cbm_petscii_charmap.inc new file mode 100644 index 0000000..525bffb --- /dev/null +++ b/cc65/asminc/cbm_petscii_charmap.inc @@ -0,0 +1,291 @@ +;/*****************************************************************************/ +;/* */ +;/* cbm_petscii_charmap.inc */ +;/* */ +;/* CBM system standard string mapping ISO-8859-1 -> PetSCII */ +;/* */ +;/* */ +;/* 2019-03-10, Greg King */ +;/* */ +;/* This software is provided "as-is", without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated, but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice must not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + +.charmap $00, $00 +.charmap $01, $01 +.charmap $02, $02 +.charmap $03, $03 +.charmap $04, $04 +.charmap $05, $05 +.charmap $06, $06 +.charmap $07, $07 +.charmap $08, $14 +.charmap $09, $09 +.charmap $0A, $0D +.charmap $0B, $11 +.charmap $0C, $93 +.charmap $0D, $0A +.charmap $0E, $0E +.charmap $0F, $0F +.charmap $10, $10 +.charmap $11, $0B +.charmap $12, $12 +.charmap $13, $13 +.charmap $14, $08 +.charmap $15, $15 +.charmap $16, $16 +.charmap $17, $17 +.charmap $18, $18 +.charmap $19, $19 +.charmap $1A, $1A +.charmap $1B, $1B +.charmap $1C, $1C +.charmap $1D, $1D +.charmap $1E, $1E +.charmap $1F, $1F + +.charmap $20, $20 +.charmap $21, $21 +.charmap $22, $22 +.charmap $23, $23 +.charmap $24, $24 +.charmap $25, $25 +.charmap $26, $26 +.charmap $27, $27 +.charmap $28, $28 +.charmap $29, $29 +.charmap $2A, $2A +.charmap $2B, $2B +.charmap $2C, $2C +.charmap $2D, $2D +.charmap $2E, $2E +.charmap $2F, $2F +.charmap $30, $30 +.charmap $31, $31 +.charmap $32, $32 +.charmap $33, $33 +.charmap $34, $34 +.charmap $35, $35 +.charmap $36, $36 +.charmap $37, $37 +.charmap $38, $38 +.charmap $39, $39 +.charmap $3A, $3A +.charmap $3B, $3B +.charmap $3C, $3C +.charmap $3D, $3D +.charmap $3E, $3E +.charmap $3F, $3F + +.charmap $40, $40 +.charmap $41, $C1 +.charmap $42, $C2 +.charmap $43, $C3 +.charmap $44, $C4 +.charmap $45, $C5 +.charmap $46, $C6 +.charmap $47, $C7 +.charmap $48, $C8 +.charmap $49, $C9 +.charmap $4A, $CA +.charmap $4B, $CB +.charmap $4C, $CC +.charmap $4D, $CD +.charmap $4E, $CE +.charmap $4F, $CF +.charmap $50, $D0 +.charmap $51, $D1 +.charmap $52, $D2 +.charmap $53, $D3 +.charmap $54, $D4 +.charmap $55, $D5 +.charmap $56, $D6 +.charmap $57, $D7 +.charmap $58, $D8 +.charmap $59, $D9 +.charmap $5A, $DA +.charmap $5B, $5B +.charmap $5C, $BF +.charmap $5D, $5D +.charmap $5E, $5E +.charmap $5F, $A4 + +.charmap $60, $AD +.charmap $61, $41 +.charmap $62, $42 +.charmap $63, $43 +.charmap $64, $44 +.charmap $65, $45 +.charmap $66, $46 +.charmap $67, $47 +.charmap $68, $48 +.charmap $69, $49 +.charmap $6A, $4A +.charmap $6B, $4B +.charmap $6C, $4C +.charmap $6D, $4D +.charmap $6E, $4E +.charmap $6F, $4F +.charmap $70, $50 +.charmap $71, $51 +.charmap $72, $52 +.charmap $73, $53 +.charmap $74, $54 +.charmap $75, $55 +.charmap $76, $56 +.charmap $77, $57 +.charmap $78, $58 +.charmap $79, $59 +.charmap $7A, $5A +.charmap $7B, $B3 +.charmap $7C, $DD +.charmap $7D, $AB +.charmap $7E, $B1 +.charmap $7F, $DF + +.charmap $80, $80 +.charmap $81, $81 +.charmap $82, $82 +.charmap $83, $83 +.charmap $84, $84 +.charmap $85, $85 +.charmap $86, $86 +.charmap $87, $87 +.charmap $88, $88 +.charmap $89, $89 +.charmap $8A, $8A +.charmap $8B, $8B +.charmap $8C, $8C +.charmap $8D, $8D +.charmap $8E, $8E +.charmap $8F, $8F +.charmap $90, $90 +.charmap $91, $91 +.charmap $92, $92 +.charmap $93, $0C +.charmap $94, $94 +.charmap $95, $95 +.charmap $96, $96 +.charmap $97, $97 +.charmap $98, $98 +.charmap $99, $99 +.charmap $9A, $9A +.charmap $9B, $9B +.charmap $9C, $9C +.charmap $9D, $9D +.charmap $9E, $9E +.charmap $9F, $9F + +.charmap $A0, $A0 +.charmap $A1, $A1 +.charmap $A2, $A2 +.charmap $A3, $A3 +.charmap $A4, $A4 +.charmap $A5, $A5 +.charmap $A6, $A6 +.charmap $A7, $A7 +.charmap $A8, $A8 +.charmap $A9, $A9 +.charmap $AA, $AA +.charmap $AB, $AB +.charmap $AC, $AC +.charmap $AD, $AD +.charmap $AE, $AE +.charmap $AF, $AF +.charmap $B0, $B0 +.charmap $B1, $B1 +.charmap $B2, $B2 +.charmap $B3, $B3 +.charmap $B4, $B4 +.charmap $B5, $B5 +.charmap $B6, $B6 +.charmap $B7, $B7 +.charmap $B8, $B8 +.charmap $B9, $B9 +.charmap $BA, $BA +.charmap $BB, $BB +.charmap $BC, $BC +.charmap $BD, $BD +.charmap $BE, $BE +.charmap $BF, $BF + +.charmap $C0, $60 +.charmap $C1, $61 +.charmap $C2, $62 +.charmap $C3, $63 +.charmap $C4, $64 +.charmap $C5, $65 +.charmap $C6, $66 +.charmap $C7, $67 +.charmap $C8, $68 +.charmap $C9, $69 +.charmap $CA, $6A +.charmap $CB, $6B +.charmap $CC, $6C +.charmap $CD, $6D +.charmap $CE, $6E +.charmap $CF, $6F +.charmap $D0, $70 +.charmap $D1, $71 +.charmap $D2, $72 +.charmap $D3, $73 +.charmap $D4, $74 +.charmap $D5, $75 +.charmap $D6, $76 +.charmap $D7, $77 +.charmap $D8, $78 +.charmap $D9, $79 +.charmap $DA, $7A +.charmap $DB, $7B +.charmap $DC, $7C +.charmap $DD, $7D +.charmap $DE, $7E +.charmap $DF, $7F + +.charmap $E0, $E0 +.charmap $E1, $E1 +.charmap $E2, $E2 +.charmap $E3, $E3 +.charmap $E4, $E4 +.charmap $E5, $E5 +.charmap $E6, $E6 +.charmap $E7, $E7 +.charmap $E8, $E8 +.charmap $E9, $E9 +.charmap $EA, $EA +.charmap $EB, $EB +.charmap $EC, $EC +.charmap $ED, $ED +.charmap $EE, $EE +.charmap $EF, $EF +.charmap $F0, $F0 +.charmap $F1, $F1 +.charmap $F2, $F2 +.charmap $F3, $F3 +.charmap $F4, $F4 +.charmap $F5, $F5 +.charmap $F6, $F6 +.charmap $F7, $F7 +.charmap $F8, $F8 +.charmap $F9, $F9 +.charmap $FA, $FA +.charmap $FB, $FB +.charmap $FC, $FC +.charmap $FD, $FD +.charmap $FE, $FE +.charmap $FF, $FF diff --git a/cc65/asminc/cbm_screen_charmap.inc b/cc65/asminc/cbm_screen_charmap.inc new file mode 100644 index 0000000..12d0255 --- /dev/null +++ b/cc65/asminc/cbm_screen_charmap.inc @@ -0,0 +1,305 @@ +;/*****************************************************************************/ +;/* */ +;/* cbm_screen_charmap.inc */ +;/* */ +;/* c Copyright 2019, Gerhard W. Gruber (sparhawk@gmx.at) */ +;/* */ +;/* When using CBM mode, this include converts character literals */ +;/* from ASCII to screen-code mapping, so you can write directly */ +;/* to the screen memory. */ +;/* */ +;/* If this include is used, no additional macros are needed. */ +;/* */ +;/*****************************************************************************/ + +; Char $00 -> c + 128 +.charmap $00, $80 + +; Char $01 ... $1A -> c + 128 + 64 control alphabet +.charmap $01, $C1 +.charmap $02, $C2 +.charmap $03, $C3 +.charmap $04, $C4 +.charmap $05, $C5 +.charmap $06, $C6 +.charmap $07, $C7 +.charmap $08, $C8 +.charmap $09, $C9 +.charmap $0A, $CA +.charmap $0B, $CB +.charmap $0C, $CC +.charmap $0D, $CD +.charmap $0E, $CE +.charmap $0F, $CF +.charmap $10, $D0 +.charmap $11, $D1 +.charmap $12, $D2 +.charmap $13, $D3 +.charmap $14, $D4 +.charmap $15, $D5 +.charmap $16, $D6 +.charmap $17, $D7 +.charmap $18, $D8 +.charmap $19, $D9 +.charmap $1A, $DA + +; Char $1B ... $1F -> c + 128 +.charmap $1B, $9B +.charmap $1C, $9C +.charmap $1D, $9D +.charmap $1E, $9E +.charmap $1F, $9F + +; Char $20 ... $3F -> c +.charmap $20, $20 +.charmap $21, $21 +.charmap $22, $22 +.charmap $23, $23 +.charmap $24, $24 +.charmap $25, $25 +.charmap $26, $26 +.charmap $27, $27 +.charmap $28, $28 +.charmap $29, $29 +.charmap $2A, $2A +.charmap $2B, $2B +.charmap $2C, $2C +.charmap $2D, $2D +.charmap $2E, $2E +.charmap $2F, $2F +.charmap $30, $30 +.charmap $31, $31 +.charmap $32, $32 +.charmap $33, $33 +.charmap $34, $34 +.charmap $35, $35 +.charmap $36, $36 +.charmap $37, $37 +.charmap $38, $38 +.charmap $39, $39 +.charmap $3A, $3A +.charmap $3B, $3B +.charmap $3C, $3C +.charmap $3D, $3D +.charmap $3E, $3E +.charmap $3F, $3F + +; Char $40 -> c - 64 +.charmap $40, $00 + +; Char $41 ... $5A -> c upper-case alphabet +.charmap $41, $41 +.charmap $42, $42 +.charmap $43, $43 +.charmap $44, $44 +.charmap $45, $45 +.charmap $46, $46 +.charmap $47, $47 +.charmap $48, $48 +.charmap $49, $49 +.charmap $4A, $4A +.charmap $4B, $4B +.charmap $4C, $4C +.charmap $4D, $4D +.charmap $4E, $4E +.charmap $4F, $4F +.charmap $50, $50 +.charmap $51, $51 +.charmap $52, $52 +.charmap $53, $53 +.charmap $54, $54 +.charmap $55, $55 +.charmap $56, $56 +.charmap $57, $57 +.charmap $58, $58 +.charmap $59, $59 +.charmap $5A, $5A + +; Char $5B ... $5F -> c - 64 +.charmap $5B, $1B +.charmap $5C, $1C +.charmap $5D, $1D +.charmap $5E, $1E +.charmap $5F, $1F + +; Char $60 -> c - 32 +.charmap $60, $40 + +; Char $61 ... $7A -> c - 32 - 64 lower-case alphabet +.charmap $61, $01 +.charmap $62, $02 +.charmap $63, $03 +.charmap $64, $04 +.charmap $65, $05 +.charmap $66, $06 +.charmap $67, $07 +.charmap $68, $08 +.charmap $69, $09 +.charmap $6A, $0A +.charmap $6B, $0B +.charmap $6C, $0C +.charmap $6D, $0D +.charmap $6E, $0E +.charmap $6F, $0F +.charmap $70, $10 +.charmap $71, $11 +.charmap $72, $12 +.charmap $73, $13 +.charmap $74, $14 +.charmap $75, $15 +.charmap $76, $16 +.charmap $77, $17 +.charmap $78, $18 +.charmap $79, $19 +.charmap $7A, $1A + +; Char $7B ... $7F -> c - 32 +.charmap $7B, $5B +.charmap $7C, $5C +.charmap $7D, $5D +.charmap $7E, $5E +.charmap $7F, $5F + +; Char $80 -> c + 64 +.charmap $80, $C0 + +; Char $81 ... $9A -> c control alphabet +.charmap $81, $81 +.charmap $82, $82 +.charmap $83, $83 +.charmap $84, $84 +.charmap $85, $85 +.charmap $86, $86 +.charmap $87, $87 +.charmap $88, $88 +.charmap $89, $89 +.charmap $8A, $8A +.charmap $8B, $8B +.charmap $8C, $8C +.charmap $8D, $8D +.charmap $8E, $8E +.charmap $8F, $8F +.charmap $90, $90 +.charmap $91, $91 +.charmap $92, $92 +.charmap $93, $93 +.charmap $94, $94 +.charmap $95, $95 +.charmap $96, $96 +.charmap $97, $97 +.charmap $98, $98 +.charmap $99, $99 +.charmap $9A, $9A + +; Char $9B ... $9F -> c + 64 +.charmap $9B, $DB +.charmap $9C, $DC +.charmap $9D, $DD +.charmap $9E, $DE +.charmap $9F, $DF + +; Char $A0 ... $BF -> c - 64 +.charmap $A0, $60 +.charmap $A1, $61 +.charmap $A2, $62 +.charmap $A3, $63 +.charmap $A4, $64 +.charmap $A5, $65 +.charmap $A6, $66 +.charmap $A7, $67 +.charmap $A8, $68 +.charmap $A9, $69 +.charmap $AA, $6A +.charmap $AB, $6B +.charmap $AC, $6C +.charmap $AD, $6D +.charmap $AE, $6E +.charmap $AF, $6F +.charmap $B0, $70 +.charmap $B1, $71 +.charmap $B2, $72 +.charmap $B3, $73 +.charmap $B4, $74 +.charmap $B5, $75 +.charmap $B6, $76 +.charmap $B7, $77 +.charmap $B8, $78 +.charmap $B9, $79 +.charmap $BA, $7A +.charmap $BB, $7B +.charmap $BC, $7C +.charmap $BD, $7D +.charmap $BE, $7E +.charmap $BF, $7F + +; Char $C0 ... $DF -> c - 128 +.charmap $C0, $40 + +; Char $C1 ... $DA -> c - 128 - 64 lower-case alphabet +.charmap $C1, $01 +.charmap $C2, $02 +.charmap $C3, $03 +.charmap $C4, $04 +.charmap $C5, $05 +.charmap $C6, $06 +.charmap $C7, $07 +.charmap $C8, $08 +.charmap $C9, $09 +.charmap $CA, $0A +.charmap $CB, $0B +.charmap $CC, $0C +.charmap $CD, $0D +.charmap $CE, $0E +.charmap $CF, $0F +.charmap $D0, $10 +.charmap $D1, $11 +.charmap $D2, $12 +.charmap $D3, $13 +.charmap $D4, $14 +.charmap $D5, $15 +.charmap $D6, $16 +.charmap $D7, $17 +.charmap $D8, $18 +.charmap $D9, $19 +.charmap $DA, $1A + +; Char $DB ... $DF -> c - 128 +.charmap $DB, $5B +.charmap $DC, $5C +.charmap $DD, $5D +.charmap $DE, $5E +.charmap $DF, $5F + +; Char $E0 ... $FF -> c - 128 +.charmap $E0, $60 +.charmap $E1, $61 +.charmap $E2, $62 +.charmap $E3, $63 +.charmap $E4, $64 +.charmap $E5, $65 +.charmap $E6, $66 +.charmap $E7, $67 +.charmap $E8, $68 +.charmap $E9, $69 +.charmap $EA, $6A +.charmap $EB, $6B +.charmap $EC, $6C +.charmap $ED, $6D +.charmap $EE, $6E +.charmap $EF, $6F +.charmap $F0, $70 +.charmap $F1, $71 +.charmap $F2, $72 +.charmap $F3, $73 +.charmap $F4, $74 +.charmap $F5, $75 +.charmap $F6, $76 +.charmap $F7, $77 +.charmap $F8, $78 +.charmap $F9, $79 +.charmap $FA, $7A +.charmap $FB, $7B +.charmap $FC, $7C +.charmap $FD, $7D +.charmap $FE, $7E +.charmap $FF, $7F diff --git a/cc65/asminc/cpu.mac b/cc65/asminc/cpu.mac new file mode 100644 index 0000000..0925191 --- /dev/null +++ b/cc65/asminc/cpu.mac @@ -0,0 +1,4 @@ +; This file is no longer needed as the symbols that were defined here are now +; internal symbols generated by the assembler. It is kept to avoid breaking +; old sources. +.warning "'.macpack cpu' is no longer required" diff --git a/cc65/asminc/creativision.inc b/cc65/asminc/creativision.inc new file mode 100644 index 0000000..a0259ec --- /dev/null +++ b/cc65/asminc/creativision.inc @@ -0,0 +1,66 @@ +;* +;** VTech Creativision Definitions +;* + +;** Screen +SCREEN_ROWS = 24 +SCREEN_COLS = 32 +SCREEN_PTR := $3A +CURSOR_X := $3C +CURSOR_Y := $3D + +;** VDP +VDP_DATA_R := $2000 +VDP_STATUS_R := $2001 +VDP_DATA_W := $3000 +VDP_CONTROL_W := $3001 + +;** PIA +PIA0_DATA := $1000 +PIA0_STATUS := $1001 +PIA1_DATA := $1002 +PIA1_STATUS := $1003 + +;** General +CH_VLINE = 33 +CH_HLINE = 34 +CH_ULCORNER = 35 +CH_URCORNER = 36 +CH_LLCORNER = 37 +CH_LRCORNER = 38 + +;** I/O (Zero-page variables) +ZP_KEYBOARD := $10 +ZP_JOY0_DIR := $11 +ZP_JOY1_DIR := $13 +ZP_JOY0_BUTTONS := $16 +ZP_JOY1_BUTTONS := $17 + +;** Joystick direction values (ZP_JOY0_DIR/ZP_JOY1_DIR) +JOY_N = $49 +JOY_NNE = $48 +JOY_NE = $47 +JOY_ENE = $46 +JOY_E = $45 +JOY_ESE = $44 +JOY_SE = $43 +JOY_SSE = $42 +JOY_S = $41 +JOY_SSW = $40 +JOY_SW = $4F +JOY_WSW = $4E +JOY_W = $4D +JOY_WNW = $4C +JOY_NW = $4B +JOY_NNW = $4A + +;** BIOS routines +BIOS_NMI_RESET_ADDR := $F808 +BIOS_PLAY_TUNE1 := $FBD6 +BIOS_PLAY_SONG := $FBED +BIOS_PLAY_TUNE2 := $FCE6 +BIOS_WRITE_VDP_REG := $FE1F +BIOS_QUIET_PSG := $FE54 +BIOS_POKE_PSG := $FE77 +BIOS_IRQ1_ADDR := $FF3F +BIOS_IRQ2_ADDR := $FF52 diff --git a/cc65/asminc/ctype.inc b/cc65/asminc/ctype.inc new file mode 100644 index 0000000..4d9ae79 --- /dev/null +++ b/cc65/asminc/ctype.inc @@ -0,0 +1,31 @@ +; ctype.inc +; +; This file is part of +; cc65 - a freeware C compiler for 6502 based systems +; +; https://cc65.github.io +; +; See "LICENSE" file for legal information. +; +; Definitions for the character type tables +; +; Ullrich von Bassewitz, 08.09.2001 +; + +; Define bitmapped constants for the table entries + +CT_NONE = %00000000 ; Nothing special +CT_LOWER = %00000001 ; 0 - Lower case char +CT_UPPER = %00000010 ; 1 - Upper case char +CT_DIGIT = %00000100 ; 2 - Numeric digit +CT_XDIGIT = %00001000 ; 3 - Hex digit (both, lower and upper) +CT_CTRL = %00010000 ; 4 - Control character +CT_SPACE = %00100000 ; 5 - The space character itself +CT_OTHER_WS = %01000000 ; 6 - Other whitespace ('\f', '\n', '\r', '\t' and '\v') +CT_SPACE_TAB = %10000000 ; 7 - Space or tab character + +; Combined stuff +CT_ALNUM = (CT_LOWER | CT_UPPER | CT_DIGIT) +CT_ALPHA = (CT_LOWER | CT_UPPER) +CT_CTRL_SPACE = (CT_CTRL | CT_SPACE) +CT_NOT_PUNCT = (CT_SPACE | CT_CTRL | CT_DIGIT | CT_UPPER | CT_LOWER) diff --git a/cc65/asminc/ctype_common.inc b/cc65/asminc/ctype_common.inc new file mode 100644 index 0000000..044c283 --- /dev/null +++ b/cc65/asminc/ctype_common.inc @@ -0,0 +1,91 @@ +; ctype_common.inc +; +; This file is part of +; cc65 - a freeware C compiler for 6502 based systems +; +; https://cc65.github.io +; +; See "LICENSE" file for legal information. +; +; Character specification table for some common targets. +; + + .include "ctypetable.inc" + .export __ctypeidx + +; The tables are readonly, put them into the rodata segment + +.rodata + +__ctypeidx: + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 0/00 ___ctrl_@___, 1/01 ___ctrl_A___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 2/02 ___ctrl_B___, 3/03 ___ctrl_C___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 4/04 ___ctrl_D___, 5/05 ___ctrl_E___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 6/06 ___ctrl_F___, 7/07 ___ctrl_G___ + ct_mix CT_CTRL_IDX, CT_CTRL_WS_SPACETAB_IDX ; 8/08 ___ctrl_H___, 9/09 ___ctrl_I___ + ct_mix CT_CTRL_WS_IDX, CT_CTRL_WS_IDX ; 10/0a ___ctrl_J___, 11/0b ___ctrl_K___ + ct_mix CT_CTRL_WS_IDX, CT_CTRL_WS_IDX ; 12/0c ___ctrl_L___, 13/0d ___ctrl_M___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 14/0e ___ctrl_N___, 15/0f ___ctrl_O___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 16/10 ___ctrl_P___, 17/11 ___ctrl_Q___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 18/12 ___ctrl_R___, 19/13 ___ctrl_S___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 20/14 ___ctrl_T___, 21/15 ___ctrl_U___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 22/16 ___ctrl_V___, 23/17 ___ctrl_W___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 24/18 ___ctrl_X___, 25/19 ___ctrl_Y___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 26/1a ___ctrl_Z___, 27/1b ___ctrl_[___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 28/1c ___ctrl_\___, 29/1d ___ctrl_]___ + ct_mix CT_CTRL_IDX, CT_CTRL_IDX ; 30/1e ___ctrl_^___, 31/1f ___ctrl_____ + + ct_mix CT_SPACE_SPACETAB_IDX, CT_NONE_IDX ; 32/20 ___SPACE___, 33/21 _____!_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 34/22 _____"_____, 35/23 _____#_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 36/24 _____$_____, 37/25 _____%_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 38/26 _____&_____, 39/27 _____'_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 40/28 _____(_____, 41/29 _____)_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 42/2a _____*_____, 43/2b _____+_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 44/2c _____,_____, 45/2d _____-_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 46/2e _____._____, 47/2f _____/_____ + ct_mix CT_DIGIT_XDIGIT_IDX, CT_DIGIT_XDIGIT_IDX ; 48/30 _____0_____, 49/31 _____1_____ + ct_mix CT_DIGIT_XDIGIT_IDX, CT_DIGIT_XDIGIT_IDX ; 50/32 _____2_____, 51/33 _____3_____ + ct_mix CT_DIGIT_XDIGIT_IDX, CT_DIGIT_XDIGIT_IDX ; 52/34 _____4_____, 53/35 _____5_____ + ct_mix CT_DIGIT_XDIGIT_IDX, CT_DIGIT_XDIGIT_IDX ; 54/36 _____6_____, 55/37 _____7_____ + ct_mix CT_DIGIT_XDIGIT_IDX, CT_DIGIT_XDIGIT_IDX ; 56/38 _____8_____, 57/39 _____9_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 58/3a _____:_____, 59/3b _____;_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 60/3c _____<_____, 61/3d _____=_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 62/3e _____>_____, 63/3f _____?_____ + + ct_mix CT_NONE_IDX, CT_UPPER_XDIGIT_IDX ; 64/40 _____@_____, 65/41 _____A_____ + ct_mix CT_UPPER_XDIGIT_IDX, CT_UPPER_XDIGIT_IDX ; 66/42 _____B_____, 67/43 _____C_____ + ct_mix CT_UPPER_XDIGIT_IDX, CT_UPPER_XDIGIT_IDX ; 68/44 _____D_____, 69/45 _____E_____ + ct_mix CT_UPPER_XDIGIT_IDX, CT_UPPER_IDX ; 70/46 _____F_____, 71/47 _____G_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 72/48 _____H_____, 73/49 _____I_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 74/4a _____J_____, 75/4b _____K_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 76/4c _____L_____, 77/4d _____M_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 78/4e _____N_____, 79/4f _____O_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 80/50 _____P_____, 81/51 _____Q_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 82/52 _____R_____, 83/53 _____S_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 84/54 _____T_____, 85/55 _____U_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 86/56 _____V_____, 87/57 _____W_____ + ct_mix CT_UPPER_IDX, CT_UPPER_IDX ; 88/58 _____X_____, 89/59 _____Y_____ + ct_mix CT_UPPER_IDX, CT_NONE_IDX ; 90/5a _____Z_____, 91/5b _____[_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 92/5c _____\_____, 93/5d _____]_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 94/5e _____^_____, 95/5f _UNDERLINE_ + + ct_mix CT_NONE_IDX, CT_LOWER_XDIGIT_IDX ; 96/60 ___grave___, 97/61 _____a_____ + ct_mix CT_LOWER_XDIGIT_IDX, CT_LOWER_XDIGIT_IDX ; 98/62 _____b_____, 99/63 _____c_____ + ct_mix CT_LOWER_XDIGIT_IDX, CT_LOWER_XDIGIT_IDX ; 100/64 _____d_____, 101/65 _____e_____ + ct_mix CT_LOWER_XDIGIT_IDX, CT_LOWER_IDX ; 102/66 _____f_____, 103/67 _____g_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 104/68 _____h_____, 105/69 _____i_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 106/6a _____j_____, 107/6b _____k_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 108/6c _____l_____, 109/6d _____m_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 110/6e _____n_____, 111/6f _____o_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 112/70 _____p_____, 113/71 _____q_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 114/72 _____r_____, 115/73 _____s_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 116/74 _____t_____, 117/75 _____u_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 118/76 _____v_____, 119/77 _____w_____ + ct_mix CT_LOWER_IDX, CT_LOWER_IDX ; 120/78 _____x_____, 121/79 _____y_____ + ct_mix CT_LOWER_IDX, CT_NONE_IDX ; 122/7a _____z_____, 123/7b _____{_____ + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 124/7c _____|_____, 125/7d _____}_____ + ct_mix CT_NONE_IDX, CT_WS_IDX ; 126/7e _____~_____, 127/7f ____DEL____ + +.repeat 64 + ct_mix CT_NONE_IDX, CT_NONE_IDX ; 128-255 +.endrepeat diff --git a/cc65/asminc/ctypetable.inc b/cc65/asminc/ctypetable.inc new file mode 100644 index 0000000..76c5b92 --- /dev/null +++ b/cc65/asminc/ctypetable.inc @@ -0,0 +1,48 @@ +; ctypetable.inc +; +; This file is part of +; cc65 - a freeware C compiler for 6502 based systems +; +; https://cc65.github.io +; +; See "LICENSE" file for legal information. +; +; Data covering all possible combinations of character flags for target specific definition +; + +.include "ctype.inc" +.export __ctype + +; Table definition covering all possible ctype combinations + +.rodata +__ctype: +ct_none: .byte CT_NONE +ct_lower: .byte CT_LOWER +ct_upper: .byte CT_UPPER +ct_digit_xdigit: .byte CT_DIGIT | CT_XDIGIT +ct_lower_xdigit: .byte CT_LOWER | CT_XDIGIT +ct_upper_xdigit: .byte CT_UPPER | CT_XDIGIT +ct_ctrl: .byte CT_CTRL +ct_ws: .byte CT_OTHER_WS +ct_ctrl_ws: .byte CT_CTRL | CT_OTHER_WS +ct_space_spacetab: .byte CT_SPACE | CT_SPACE_TAB +ct_ctrl_ws_spacetab: .byte CT_CTRL | CT_OTHER_WS | CT_SPACE_TAB + +; build indices out of the table above: + +CT_NONE_IDX = ct_none - __ctype +CT_LOWER_IDX = ct_lower - __ctype +CT_UPPER_IDX = ct_upper - __ctype +CT_DIGIT_XDIGIT_IDX = ct_digit_xdigit - __ctype +CT_LOWER_XDIGIT_IDX = ct_lower_xdigit - __ctype +CT_UPPER_XDIGIT_IDX = ct_upper_xdigit - __ctype +CT_CTRL_IDX = ct_ctrl - __ctype +CT_WS_IDX = ct_ws - __ctype +CT_CTRL_WS_IDX = ct_ctrl_ws - __ctype +CT_SPACE_SPACETAB_IDX = ct_space_spacetab - __ctype +CT_CTRL_WS_SPACETAB_IDX = ct_ctrl_ws_spacetab - __ctype + +.macro ct_mix lower, upper + .byte ((lower) & $0F) | ((upper) << 4) +.endmacro diff --git a/cc65/asminc/cx16.inc b/cc65/asminc/cx16.inc new file mode 100644 index 0000000..d264add --- /dev/null +++ b/cc65/asminc/cx16.inc @@ -0,0 +1,574 @@ +; +; CX16 r39 definitions +; + +; --------------------------------------------------------------------------- +; Constants + +.enum COLOR + BLACK = $00 + WHITE + RED + CYAN + PURPLE + GREEN + BLUE + YELLOW + ORANGE + BROWN + PINK + LIGHTRED = PINK + GRAY1 + GRAY2 + LIGHTGREEN + LIGHTBLUE + GRAY3 +.endenum + +; Special characters +.enum CH +COLOR_SWAP = $01 +STOP = $03 +UNDERLINE +WHITE +BOLD +BELL +BACKSPACE +TAB +LINEFEED +ITALIC +OUTLINE +ENTER +FONT_LOWER +FONT_ISO +F9 +CURS_DOWN +REVERSE +HOME +DEL +F10 +F11 +F12 +SHIFT_TAB +RED = $1C +CURS_RIGHT +GREEN +BLUE +LIRA = $5C +ORANGE = $81 +RUN = $83 +HELP +F1 +F3 +F5 +F7 +F2 +F4 +F6 +F8 +SHIFT_ENTER +FONT_UPPER +FONT_PET +BLACK +CURS_UP +ATTR_CLEAR +SCRN_CLEAR +INS +BROWN +PINK +LIGHTRED = PINK +GRAY1 +GRAY2 +LIGHTGREEN +LIGHTBLUE +GRAY3 +PURPLE +CURS_LEFT +YELLOW +CYAN +SHIFT_SPACE +LTEE = $AB +LLCORNER = $AD +URCORNER +ULCORNER = $B0 +BTEE +TTEE +RTEE +LRCORNER = $BD +HLINE = $C0 +CROSS = $DB +VLINE = $DD +PI +.endenum + +; --------------------------------------------------------------------------- +; Zero page + +; Banking registers +RAM_BANK := $00 +ROM_BANK := $01 + +; GEOS and graphics pseudo-registers +.struct gREG + .org $02 + .union + r0 .word + .struct + r0L .byte + r0H .byte + .endstruct + .endunion + .union + r1 .word + .struct + r1L .byte + r1H .byte + .endstruct + .endunion + .union + r2 .word + .struct + r2L .byte + r2H .byte + .endstruct + .endunion + .union + r3 .word + .struct + r3L .byte + r3H .byte + .endstruct + .endunion + .union + r4 .word + .struct + r4L .byte + r4H .byte + .endstruct + .endunion + .union + r5 .word + .struct + r5L .byte + r5H .byte + .endstruct + .endunion + .union + r6 .word + .struct + r6L .byte + r6H .byte + .endstruct + .endunion + .union + r7 .word + .struct + r7L .byte + r7H .byte + .endstruct + .endunion + .union + r8 .word + .struct + r8L .byte + r8H .byte + .endstruct + .endunion + .union + r9 .word + .struct + r9L .byte + r9H .byte + .endstruct + .endunion + .union + r10 .word + .struct + r10L .byte + r10H .byte + .endstruct + .endunion + .union + r11 .word + .struct + r11L .byte + r11H .byte + .endstruct + .endunion + .union + r12 .word + .struct + r12L .byte + r12H .byte + .endstruct + .endunion + .union + r13 .word + .struct + r13L .byte + r13H .byte + .endstruct + .endunion + .union + r14 .word + .struct + r14L .byte + r14H .byte + .endstruct + .endunion + .union + r15 .word + .struct + r15L .byte + r15H .byte + .endstruct + .endunion +.endstruct + +; Kernal +KTEMP2 := $80 ; 2 bytes for temporary storage +IMPARM := $82 ; Pointer for PRIMM function +FNAM := $8A ; Pointer to filename + +; BASIC +TXTPTR := $EE ; Pointer into BASIC source code + +; Page two + +BASIC_BUF := $0200 ; Location of command-line +BASIC_BUF_LEN = 81 ; Maximum length of command-line + +SCREEN_PTR := $0262 ; Pointer to current row on text screen (16 bits) +STATUS := $0287 ; Status from previous I/O operation +IN_DEV := $028B ; Current input device number +OUT_DEV := $028C ; Current output device number +FNAM_LEN := $028F ; Length of filename +SECADR := $0291 ; Secondary address +DEVNUM := $0292 ; Device number +CURS_COLOR := $0373 ; Color under the cursor +CHARCOLOR := $0376 ; Cursor's color nybbles (high: background, low: foreground) +RVS := $0377 ; Reverse flag +CURS_FLAG := $037B ; 1 = cursor off +CURS_BLINK := $037C ; Blink counter +CURS_CHAR := $037D ; Character under the cursor +CURS_STATE := $037E ; Cursor blink state +CURS_X := $0380 ; Cursor column +CURS_Y := $0383 ; Cursor row +LLEN := $0386 ; Line length +NLINES := $0387 ; Number of screen lines + +; BASIC +VARTAB := $03E1 ; Pointer to start of BASIC variables +MEMSIZE := $0259 ; Pointer to highest BASIC RAM location (+1) + +; --------------------------------------------------------------------------- +; Vector and other locations + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 + +; --------------------------------------------------------------------------- +; I/O locations + +; 65C22 Versatile Interface Adapter +.struct VIA1 ; Versatile Interface Adapter + .org $9F00 + PRB .byte ; mouse, LED, VIC bus (Port Register B) + PRA .byte ; keyboard, controllers (Port Register A) + DDRB .byte ; (Data Direction Register B) + DDRA .byte ; (Data Direction Register A) + T1 .word ; (Timer 1) + T1L .word ; (Timer 1 Latch) + T2 .word ; (Timer 2) + SR .byte ; (Shift Register) + ACR .byte ; (Auxiliary Control Register) + PCR .byte ; (Peripheral Control Register) + IFR .byte ; (Interrupt Flags Register) + IER .byte ; (Interrupt Enable Register) + PRA2 .byte ; keyboard, controllers (PRA without handshake) +.endstruct + +; 65C22 Versatile Interface Adapter +.struct VIA2 + .org $9F10 + PRB .byte + PRA .byte + DDRB .byte + DDRA .byte + T1 .word + T1L .word + T2 .word + SR .byte + ACR .byte + PCR .byte + IFR .byte + IER .byte + PRA2 .byte +.endstruct + +; Video Enhanced Retro Adapter +; Has audio and SPI. +.scope VERA + + ; External registers + + .struct + .org $9F20 + ADDR .faraddr ; Address for data port access + DATA0 .byte ; First data port + DATA1 .byte ; Second data port + CTRL .byte ; Control register + IRQ_EN .byte ; Interrupt enable bits + IRQ_FLAGS .byte ; Interrupt flags + IRQ_RASTER .byte ; Line where IRQ will occur + .endstruct + .enum ; Address automatic increment amounts + DEC0 = (($00 << 1) | $01) << 3 + DEC1 = (($01 << 1) | $01) << 3 + DEC2 = (($02 << 1) | $01) << 3 + DEC4 = (($03 << 1) | $01) << 3 + DEC8 = (($04 << 1) | $01) << 3 + DEC16 = (($05 << 1) | $01) << 3 + DEC32 = (($06 << 1) | $01) << 3 + DEC64 = (($07 << 1) | $01) << 3 + DEC128 = (($08 << 1) | $01) << 3 + DEC256 = (($09 << 1) | $01) << 3 + DEC512 = (($0A << 1) | $01) << 3 + DEC40 = (($0B << 1) | $01) << 3 + DEC80 = (($0C << 1) | $01) << 3 + DEC160 = (($0D << 1) | $01) << 3 + DEC320 = (($0E << 1) | $01) << 3 + DEC640 = (($0F << 1) | $01) << 3 + INC0 = (($00 << 1) | $00) << 3 + INC1 = (($01 << 1) | $00) << 3 + INC2 = (($02 << 1) | $00) << 3 + INC4 = (($03 << 1) | $00) << 3 + INC8 = (($04 << 1) | $00) << 3 + INC16 = (($05 << 1) | $00) << 3 + INC32 = (($06 << 1) | $00) << 3 + INC64 = (($07 << 1) | $00) << 3 + INC128 = (($08 << 1) | $00) << 3 + INC256 = (($09 << 1) | $00) << 3 + INC512 = (($0A << 1) | $00) << 3 + INC40 = (($0B << 1) | $00) << 3 + INC80 = (($0C << 1) | $00) << 3 + INC160 = (($0D << 1) | $00) << 3 + INC320 = (($0E << 1) | $00) << 3 + INC640 = (($0F << 1) | $00) << 3 + .endenum + .enum ; Interrupt request flags + VERT_SYNC = %00000001 + RASTER_IRQ = %00000010 + SPR_COLLIDED = %00000100 + AUDIO_LOW = %00001000 + .endenum + .scope DISP ; Display controller + SELECT1 = %00000010 + .union + .org $9F29 + .struct + ; These four registers are visible when the DCSEL flag = %0 + VIDEO .byte + HSCALE .byte + VSCALE .byte + FRAME .byte + .endstruct + .struct + ; These four registers are visible when the DCSEL flag = %1 + HSTART .byte + HSTOP .byte + VSTART .byte + VSTOP .byte + .endstruct + .endunion + .enum MODE ; Output mode + DISABLE = $00 + VGA + NTSC + RGB ; Interlaced, composite sync + .endenum + .enum DISABLE + COLOR = %00000100 ; NTSC monochrome + .endenum + .enum ENABLE + LAYER0 = %00010000 + LAYER1 = %00100000 + SPRITES = %01000000 + .endenum + .endscope + .struct L0 ; Display layer 0 + .org $9F2D + CONFIG .byte + MAP_BASE .byte + TILE_BASE .byte + HSCROLL .word + VSCROLL .word + .endstruct + .struct L1 ; Display layer 1 + .org $9F34 + CONFIG .byte + MAP_BASE .byte + TILE_BASE .byte + HSCROLL .word + VSCROLL .word + .endstruct + .enum ; Layer display modes + TILE1BPP = %00000000 | $00 + TILE2BPP + TILE4BPP + TILE8BPP + T256C = %00001000 + BITMAP1BPP = %00000100 | $00 + BITMAP2BPP + BITMAP4BPP + BITMAP8BPP + .endenum + .enum MAP ; Map geometry + WIDTH32 = $00 << 4 + WIDTH64 = $01 << 4 + WIDTH128 = $02 << 4 + WIDTH256 = $03 << 4 + HEIGHT32 = $00 << 6 + HEIGHT64 = $01 << 6 + HEIGHT128 = $02 << 6 + HEIGHT256 = $03 << 6 + .endenum + .enum TILE ; Tile geometry + WIDTH8 = $00 + WIDTH16 = $01 + WIDTH320 = WIDTH8 + WIDTH640 = WIDTH16 + HEIGHT8 = $00 << 1 + HEIGHT16 = $01 << 1 + .endenum + .scope PCM ; Pulse-Code Modulator + .struct + .org $9F3B + CTRL .byte + RATE .byte + DATA .byte + .endstruct + .enum + STEREO = %00010000 + BITS16 = %00100000 + RESET = %10000000 + .endenum + .endscope + .scope SPI + .struct + .org $9F3E + DATA .byte + CTRL .byte + .endstruct + .enum + SELECT = %00000001 + SLOW = %00000010 + .endenum + .endscope + + ; Internal RAM and registers + + .struct + .org $000000 + VRAM .res $020000 ; 128 Kibibytes + .endstruct + .scope PSG ; Programmable Sound Generator + .struct + PITCH .word + VOL .byte ; Right, left sides; volume + WAVEFORM .byte ; Wave shape, pulse width + .endstruct + LEFT = %01 << 6 + RIGHT = %10 << 6 + .enum + PULSE = $00 << 6 + SAWTOOTH = $01 << 6 + TRIANGLE = $02 << 6 + NOISE = $03 << 6 + .endenum + .struct + .org $01F9C0 + VOICES .res $10 * 4 + .endstruct + .endscope + .struct + .org $01FA00 + PALETTE .word $0100 + .endstruct + .scope SPRITE + .struct ; Sprite attributes + ADDR .addr ; Address and color mode + XX .word ; Co-ordinates + YY .word + Z_FLIP .byte ; Collision mask, Z-depth, flip bits + SIZE_PAL .byte + .endstruct + .enum FLIP + NONE = %00000000 + HORIZ + VERT + BOTH + .endenum + .enum DEPTH + DISABLE = $00 << 2 + CANVAS = $01 << 2 + LAYER0 = $02 << 2 + LAYER1 = $03 << 2 + .endenum + .enum ; Sprite geometry + WIDTH8 = $00 << 4 + WIDTH16 = $01 << 4 + WIDTH32 = $02 << 4 + WIDTH64 = $03 << 4 + HEIGHT8 = $00 << 6 + HEIGHT16 = $01 << 6 + HEIGHT32 = $02 << 6 + HEIGHT64 = $03 << 6 + COLORS16 = $00 << 7 + COLORS256 = $01 << 7 + .endenum + .endscope + .struct + .org $01FC00 + SPRITES .res 128 * 8 + .endstruct +.endscope + +; YM2151 audio chip +.struct YM2151 + .org $9F40 + ADDR .byte + .union + DATA .byte + STATUS .byte + .endunion +.endstruct + +; X16 Emulator device +; This device doesn't exist on the real machine. +.struct EMULATOR + .org $9FB0 + DEBUG .byte ; Boolean: debugging enabled + VERALOG .byte ; Boolean: log VERA activity + KEYBOARDLOG .byte ; Boolean: log keyboard data + ECHO .byte ; Type of echo that's enabled + SAVEXIT .byte ; Boolean: save machine state on exit + GIFREC .byte ; Method of recording GIF movie + .res 2 + CYCLECOUNT .dword ; Running count of CPU cycles (Read-Only) + .res 1 + KEYMAP .byte ; Current keyboard layout number (Read-Only) + DETECT .byte 2 ; If is "16" string, then running on emulator (RO) +.endstruct + +; --------------------------------------------------------------------------- +; Banked RAM and ROM + +TIMER := $A03B ; (bank 0) 60 Hz. timer (3 bytes, big-endian) + +.struct BANK + .org $A000 + RAM .res $2000 ; 8 Kibibyte window into 512 Kibibytes or 2048 Kibibytes + ROM .res $4000 ; 16 Kibibyte window into 128 Kibibytes +.endstruct diff --git a/cc65/asminc/em-error.inc b/cc65/asminc/em-error.inc new file mode 100644 index 0000000..e0c8850 --- /dev/null +++ b/cc65/asminc/em-error.inc @@ -0,0 +1,49 @@ +;/*****************************************************************************/ +;/* */ +;/* em-error.inc */ +;/* */ +;/* EM error codes */ +;/* */ +;/* */ +;/* */ +;/* (C) 2002-2012, Ullrich von Bassewitz */ +;/* Roemerstrasse 52 */ +;/* D-70794 Filderstadt */ +;/* EMail: uz@cc65.org */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + +; Error constants +.enum + EM_ERR_OK ; No error + EM_ERR_NO_DRIVER ; No driver available + EM_ERR_CANNOT_LOAD ; Error loading driver + EM_ERR_INV_DRIVER ; Invalid driver + EM_ERR_NO_DEVICE ; Device (hardware) not found + EM_ERR_INSTALLED ; A driver is already installed + + EM_ERR_COUNT ; Special: Number of error messages +.endenum + + + diff --git a/cc65/asminc/em-kernel.inc b/cc65/asminc/em-kernel.inc new file mode 100644 index 0000000..9e89b6f --- /dev/null +++ b/cc65/asminc/em-kernel.inc @@ -0,0 +1,106 @@ +;/*****************************************************************************/ +;/* */ +;/* em-kernel.inc */ +;/* */ +;/* EM kernel interface */ +;/* */ +;/* */ +;/* */ +;/* (C) 2002-2003 Ullrich von Bassewitz */ +;/* Roemerstrasse 52 */ +;/* D-70794 Filderstadt */ +;/* EMail: uz@cc65.org */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + +;------------------------------------------------------------------------------ +; The driver header + +.struct EMD_HDR + ID .byte 3 ; Contains 0x65, 0x6d, 0x64 ("emd") + VERSION .byte 1 ; Interface version + LIBREF .addr ; Library reference + JUMPTAB .struct + INSTALL .addr ; INSTALL routine + UNINSTALL .addr ; UNINSTALL routine + PAGECOUNT .addr ; PAGECOUNT routine + MAP .addr ; MAP routine + USE .addr ; USE routine + MAPCLEAN .addr ; MAPCLEAN routine + COPYFROM .addr ; COPYFROM routine + COPYTO .addr ; COPYTO routine + .endstruct +.endstruct + +;------------------------------------------------------------------------------ +; The EMD API version, stored in EMD_HDR::VERSION + +EMD_API_VERSION = $02 + +;------------------------------------------------------------------------------ +; The asm equivalent to the C em_copy structure + +.struct EM_COPY + BUF .addr ; Memory buffer to copy from or to + OFFS .byte ; Offset into page + PAGE .word ; Starting page to copy from or to + COUNT .word ; Number of bytes to copy + UNUSED .byte ; Make the size 8 bytes +.endstruct + +;------------------------------------------------------------------------------ +; Variables + + .global _em_drv ; Pointer to driver + +;------------------------------------------------------------------------------ +; Driver entry points + + .global emd_install + .global emd_uninstall + .global emd_pagecount + .global emd_map + .global emd_use + .global emd_commit + .global emd_copyfrom + .global emd_copyto + +;------------------------------------------------------------------------------ +; ASM functions + + .global em_clear_ptr + +;------------------------------------------------------------------------------ +; C callable functions + + .global _em_load_driver + .global _em_unload + .global _em_install + .global _em_uninstall + .global _em_pagecount + .global _em_map + .global _em_use + .global _em_commit + .global _em_copyfrom + .global _em_copyto + diff --git a/cc65/asminc/errno.inc b/cc65/asminc/errno.inc new file mode 100644 index 0000000..2e876c7 --- /dev/null +++ b/cc65/asminc/errno.inc @@ -0,0 +1,37 @@ +; +; Ullrich von Bassewitz, 16.05.2000 +; + +; Variables and functions + + .global ___errno, ___oserror + .global ___osmaperrno + .global ___seterrno + .global ___directerrno, ___mappederrno + +; Error codes, must match the values in the C headers +.enum + EOK ; No error + ENOENT ; No such file or directory + ENOMEM ; Out of memory + EACCES ; Permission denied + ENODEV ; No such device + EMFILE ; Too many open files + EBUSY ; Device or resource busy + EINVAL ; Invalid argument + ENOSPC ; No space left on device + EEXIST ; File exists + EAGAIN ; Try again + EIO ; I/O error + EINTR ; Interrupted system call + ENOSYS ; Function not implemented + ESPIPE ; Illegal seek + ERANGE ; Range error + EBADF ; Bad file number + ENOEXEC ; Exec format error + EUNKNOWN ; Unknown OS specific error - must be last! + + EMAX = EUNKNOWN ; Highest error code +.endenum + + diff --git a/cc65/asminc/fcntl.inc b/cc65/asminc/fcntl.inc new file mode 100644 index 0000000..5e6333d --- /dev/null +++ b/cc65/asminc/fcntl.inc @@ -0,0 +1,21 @@ +; +; Ullrich von Bassewitz, 05.06.1999 +; + +; Predefined file handles +STDIN_FILENO = 0 +STDOUT_FILENO = 1 +STDERR_FILENO = 2 + +; File mode constants, must match the values in the C headers +O_RDONLY = $01 +O_WRONLY = $02 +O_RDWR = $03 +O_CREAT = $10 +O_TRUNC = $20 +O_APPEND = $40 +O_EXCL = $80 + + + + diff --git a/cc65/asminc/gamate.inc b/cc65/asminc/gamate.inc new file mode 100644 index 0000000..4e7fee2 --- /dev/null +++ b/cc65/asminc/gamate.inc @@ -0,0 +1,64 @@ +;------------------------------------------------------------------------------- +; gamate.inc +; +; Gamate system specific definitions +; +; (w) 2015 Groepaz/Hitmen (groepaz@gmx.net) +; based on technical reference by PeT (mess@utanet.at) +;------------------------------------------------------------------------------- + +; look at gamate.h for comments, they are not duplicated here + +AUDIO_BASE = $4000 + +JOY_DATA = $4400 + +JOY_DATA_UP = $01 +JOY_DATA_DOWN = $02 +JOY_DATA_LEFT = $04 +JOY_DATA_RIGHT = $08 +JOY_DATA_FIRE_A = $10 +JOY_DATA_FIRE_B = $20 +JOY_DATA_START = $40 +JOY_DATA_SELECT = $80 + +LCD_WIDTH = 160 +LCD_HEIGHT = 152 + +LCD_BASE = $5000 +LCD_MODE = $5001 +LCD_XPOS = $5002 +LCD_YPOS = $5003 +LCD_X = $5004 +LCD_Y = $5005 +LCD_READ = $5006 +LCD_DATA = $5007 + +LCD_MODE_INC_X = $00 +LCD_MODE_INC_Y = $40 +LCD_XPOS_PLANE1 = $00 +LCD_XPOS_PLANE2 = $80 + +; constants for the conio implementation +charsperline = (LCD_WIDTH / 8) +screenrows = (LCD_HEIGHT / 8) + +CH_HLINE = 1 +CH_VLINE = 2 + +COLOR_WHITE = 0 +COLOR_GREY2 = 1 +COLOR_GREY1 = 2 +COLOR_BLACK = 3 + +; bios zp usage: +ZP_NMI_4800 = $0a +ZP_IRQ_COUNT = $0b +ZP_IRQ_CTRL = $0c + +ZP_IRQ_CNT1 = $0e +ZP_IRQ_CNT2 = $0f +ZP_IRQ_CNT3 = $10 +ZP_IRQ_CNT4 = $11 + +ZP_NMI_FLAG = $e8 diff --git a/cc65/asminc/generic.mac b/cc65/asminc/generic.mac new file mode 100644 index 0000000..5e5b210 --- /dev/null +++ b/cc65/asminc/generic.mac @@ -0,0 +1,53 @@ + +; add - Add without carry +.macro add Arg1, Arg2 + clc + .if .paramcount = 2 + adc Arg1, Arg2 + .else + adc Arg1 + .endif +.endmacro + +; sub - subtract without borrow +.macro sub Arg1, Arg2 + sec + .if .paramcount = 2 + sbc Arg1, Arg2 + .else + sbc Arg1 + .endif +.endmacro + +; bge - jump if unsigned greater or equal +.macro bge Arg + bcs Arg +.endmacro + +; blt - Jump if unsigned less +.macro blt Arg + bcc Arg +.endmacro + +; bgt - jump if unsigned greater +.macro bgt Arg + beq *+4 + bcs Arg +.endmacro + +; ble - jump if unsigned less or equal +.macro ble Arg + beq Arg + bcc Arg +.endmacro + +; bnz - jump if not zero +.macro bnz Arg + bne Arg +.endmacro + +; bze - jump if zero +.macro bze Arg + beq Arg +.endmacro + diff --git a/cc65/asminc/get_tv.inc b/cc65/asminc/get_tv.inc new file mode 100644 index 0000000..47e0d9c --- /dev/null +++ b/cc65/asminc/get_tv.inc @@ -0,0 +1,22 @@ +; +; get_tv.inc +; +; Ullrich von Bassewitz, 2004-10-15 +; +; Defines for the get_tv function. + + + +; Error codes returned by all functions +.enum TV + NTSC + PAL + OTHER +.endenum + + +; get_tv function + + .global _get_tv + + diff --git a/cc65/asminc/joy-error.inc b/cc65/asminc/joy-error.inc new file mode 100644 index 0000000..5c13386 --- /dev/null +++ b/cc65/asminc/joy-error.inc @@ -0,0 +1,44 @@ +;/*****************************************************************************/ +;/* */ +;/* joy-error.inc */ +;/* */ +;/* Joystick error codes */ +;/* */ +;/* */ +;/* */ +;/* (C) 2002 Ullrich von Bassewitz */ +;/* Wacholderweg 14 */ +;/* D-70597 Stuttgart */ +;/* EMail: uz@musoftware.de */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + +; Error codes +JOY_ERR_OK = 0 ; No error +JOY_ERR_NO_DRIVER = 1 ; No driver available +JOY_ERR_CANNOT_LOAD = 2 ; Error loading driver +JOY_ERR_INV_DRIVER = 3 ; Invalid driver +JOY_ERR_NO_DEVICE = 4 ; Device (hardware) not found + + + diff --git a/cc65/asminc/joy-kernel.inc b/cc65/asminc/joy-kernel.inc new file mode 100644 index 0000000..7919341 --- /dev/null +++ b/cc65/asminc/joy-kernel.inc @@ -0,0 +1,83 @@ +;/*****************************************************************************/ +;/* */ +;/* joy-kernel.inc */ +;/* */ +;/* Internally used joystick functions */ +;/* */ +;/* */ +;/* */ +;/* (C) 2002-2006, Ullrich von Bassewitz */ +;/* Roemerstrasse 52 */ +;/* D-70794 Filderstadt */ +;/* EMail: uz@cc65.org */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + + + + +;------------------------------------------------------------------------------ +; Driver header stuff + +.struct JOY_HDR + ID .byte 3 ; $6A, $6F, $79 ("joy") + VERSION .byte 1 ; Interface version + LIBREF .addr ; Library reference + JUMPTAB .struct + INSTALL .addr ; INSTALL routine + UNINSTALL .addr ; UNINSTALL routine + COUNT .addr ; COUNT routine + READ .addr ; READ routine + .endstruct +.endstruct + +;------------------------------------------------------------------------------ +; The JOY API version, stored in JOY_HDR::VERSION + +JOY_API_VERSION = $05 + +;------------------------------------------------------------------------------ +; Variables + + .global _joy_drv ; Pointer to driver + .global _joy_masks + +;------------------------------------------------------------------------------ +; Driver entry points + + .global joy_install + .global joy_uninstall + .global joy_count + .global joy_read + +;------------------------------------------------------------------------------ +; C callable functions + + .global _joy_load_driver + .global _joy_unload + .global _joy_install + .global _joy_uninstall + .global _joy_count + .global _joy_read + + .global _joy_clear_ptr diff --git a/cc65/asminc/kim1.inc b/cc65/asminc/kim1.inc new file mode 100644 index 0000000..81e83b8 --- /dev/null +++ b/cc65/asminc/kim1.inc @@ -0,0 +1,31 @@ +; --------------------------------------------------------------------------- +; +; KIM-1 definitions +; +; --------------------------------------------------------------------------- + + +RAMSTART := $0200 ; Entry point + + +; --------------------------------------------------------------------------- +; Monitor Functions +; --------------------------------------------------------------------------- +OUTCHR := $1EA0 ; Output character +INTCHR := $1E5A ; Input character without case conversion +DUMPT := $1800 ; Dump memory to tape +LOADT := $1873 ; Load memory from tape +START := $1C4F ; Enter KIM-1 monitor +SCANDS := $1F1F ; Scan 7-segment display +KEYIN := $1F40 ; Open up keyboard channel +GETKEY := $1F6A ; Return key from keyboard + + +; --------------------------------------------------------------------------- +; System Memory +; --------------------------------------------------------------------------- +SAL := $17F5 ; Tape load address low +SAH := $17F6 ; Tape load address high +EAL := $17F7 ; Tape address end low +EAH := $17F8 ; Tape address end high +ID := $17F9 ; Tape Identification number diff --git a/cc65/asminc/longbranch.mac b/cc65/asminc/longbranch.mac new file mode 100644 index 0000000..d6f6cde --- /dev/null +++ b/cc65/asminc/longbranch.mac @@ -0,0 +1,88 @@ +.macro jeq Target + .if .match(Target, 0) + bne *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + beq Target + .else + bne *+5 + jmp Target + .endif +.endmacro +.macro jne Target + .if .match(Target, 0) + beq *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bne Target + .else + beq *+5 + jmp Target + .endif +.endmacro +.macro jmi Target + .if .match(Target, 0) + bpl *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bmi Target + .else + bpl *+5 + jmp Target + .endif +.endmacro +.macro jpl Target + .if .match(Target, 0) + bmi *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bpl Target + .else + bmi *+5 + jmp Target + .endif +.endmacro +.macro jcs Target + .if .match(Target, 0) + bcc *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bcs Target + .else + bcc *+5 + jmp Target + .endif +.endmacro +.macro jcc Target + .if .match(Target, 0) + bcs *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bcc Target + .else + bcs *+5 + jmp Target + .endif +.endmacro +.macro jvs Target + .if .match(Target, 0) + bvc *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bvs Target + .else + bvc *+5 + jmp Target + .endif +.endmacro +.macro jvc Target + .if .match(Target, 0) + bvs *+5 + jmp Target + .elseif .def(Target) .and .const((*-2)-(Target)) .and ((*+2)-(Target) <= 127) + bvc Target + .else + bvs *+5 + jmp Target + .endif +.endmacro diff --git a/cc65/asminc/lynx.inc b/cc65/asminc/lynx.inc new file mode 100644 index 0000000..150bee6 --- /dev/null +++ b/cc65/asminc/lynx.inc @@ -0,0 +1,460 @@ +; Lynx system hardware includes +; Shawn Jefferson +; June 18th, 2004 +; +; Reference: +; Bastian Schick's Lynx Documentation +; http://www.geocities.ws/SiliconValley/Byte/4242/lynx/ +; + +; *** +; *** Suzy Addresses +; *** + +; Sprite Control Block + +TMPADRL = $FC00 +TMPADRH = $FC01 +TILTACUML = $FC02 +TILTACUMH = $FC03 +HOFFL = $FC04 +HOFFH = $FC05 +VOFFL = $FC06 +VOFFH = $FC07 +VIDBASL = $FC08 +VIDBASH = $FC09 +COLLBASL = $FC0A +COLLBASH = $FC0B +VIDADRL = $FC0C +VIDADRH = $FC0D +COLLADRL = $FC0E +COLLADRH = $FC0F +SCBNEXTL = $FC10 +SCBNEXTH = $FC11 +SPRDLINEL = $FC12 +SPRDLINEH = $FC13 +HPOSSTRTL = $FC14 +HPOSSTRTH = $FC15 +VPOSSTRTL = $FC16 +VPOSSTRTH = $FC17 +SPRHSIZL = $FC18 +SPRHSIZH = $FC19 +SPRVSIZL = $FC1A +SPRVSIZH = $FC1B +STRETCHL = $FC1C +STRETCHH = $FC1D +TILTL = $FC1E +TILTH = $FC1F +SPRDOFFL = $FC20 +SPRDOFFH = $FC21 +SPRVPOSL = $FC22 +SPRVPOSH = $FC23 +COLLOFFL = $FC24 +COLLOFFH = $FC25 +VSIZACUML = $FC26 +VSIZACUMH = $FC27 +HSIZOFFL = $FC28 +HSIZOFFH = $FC29 +VSIZOFFL = $FC2A +VSIZOFFH = $FC2B +SCBADRL = $FC2C +SCBADRH = $FC2D +PROCADRL = $FC2E +PROCADRH = $FC2F + +; Suzy Math + +MATHD = $FC52 +MATHC = $FC53 +MATHB = $FC54 +MATHA = $FC55 +MATHP = $FC56 +MATHN = $FC57 +MATHH = $FC60 +MATHG = $FC61 +MATHF = $FC62 +MATHE = $FC63 +MATHM = $FC6C +MATHL = $FC6D +MATHK = $FC6E +MATHJ = $FC6F + +; Suzy sprite engine + +SPRCTL0 = $FC80 +; Sprite bits-per-pixel definitions +BPP_MASK = %11000000 ; Mask for settings bits per pixel +BPP_1 = %00000000 +BPP_2 = %01000000 +BPP_3 = %10000000 +BPP_4 = %11000000 +; More sprite control 0 bit definitions +HFLIP = %00100000 +VFLIP = %00010000 +; Sprite types - redefined to reflect the reality caused by the shadow error +TYPE_SHADOW = %00000111 +TYPE_XOR = %00000110 +TYPE_NONCOLL = %00000101 ; Non-colliding +TYPE_NORMAL = %00000100 +TYPE_BOUNDARY = %00000011 +TYPE_BSHADOW = %00000010 ; Background shadow +TYPE_BACKNONCOLL = %00000001 ; Background non-colliding +TYPE_BACKGROUND = %00000000 + +SPRCTL1 = $FC81 +LITERAL = %10000000 +PACKED = %00000000 +ALGO3 = %01000000 ; Broken, do not set this bit! +; Sprite reload mask definitions +RELOAD_MASK = %00110000 +RENONE = %00000000 ; Reload nothing +REHV = %00010000 ; Reload hsize, vsize +REHVS = %00100000 ; Reload hsize, vsize, stretch +REHVST = %00110000 ; Reload hsize, vsize, stretch, tilt +; More sprite control 1 bit definitions +REUSEPAL = %00001000 +SKIP = %00000100 +DRAWUP = %00000010 +DRAWLEFT = %00000001 + +SPRCOLL = $FC82 +SPRINIT = $FC83 +SUZYHREV = $FC88 +SUZYSREV = $FC89 +SUZYBUSEN = $FC90 + +SPRGO = $FC91 +; SPRGO bit definitions +SPRITE_GO = %00000001 ; sprite process start bit +EVER_ON = %00000100 ; everon detector enable + +SPRSYS = $FC92 +; SPRSYS bit definitions for write operations +SIGNMATH = %10000000 ; signed math +ACCUMULATE = %01000000 ; accumulate multiplication results +NO_COLLIDE = %00100000 ; do not collide with any sprites (also SPRCOLL bit definition) +VSTRETCH = %00010000 ; stretch v +LEFTHAND = %00001000 +CLR_UNSAFE = %00000100 ; unsafe access reset +SPRITESTOP = %00000010 ; request to stop sprite process +; SPRSYS bit definitions for read operations +MATHWORKING = %10000000 ; math operation in progress +MATHWARNING = %01000000 ; accumulator overflow on multiple or divide by zero +MATHCARRY = %00100000 ; last carry bit +VSTRETCHING = %00010000 +LEFTHANDED = %00001000 +UNSAFE_ACCESS = %00000100 ; unsafe access performed +SPRITETOSTOP = %00000010 ; requested to stop +SPRITEWORKING = %00000001 ; sprite process is active + +JOYSTICK = $FCB0 +; JOYSTICK bit definitions +JOYPAD_UP = %10000000 +JOYPAD_DOWN = %01000000 +JOYPAD_LEFT = %00100000 +JOYPAD_RIGHT = %00010000 +BUTTON_OPTION1 = %00001000 +BUTTON_OPTION2 = %00000100 +BUTTON_INNER = %00000010 +BUTTON_OUTER = %00000001 + +SWITCHES = $FCB1 +; SWITCHES bit definitions +CART1_IO_INACTIVE = %00000100 +CART0_IO_INACTIVE = %00000010 +BUTTON_PAUSE = %00000001 + +RCART0 = $FCB2 +RCART1 = $FCB3 +LEDS = $FCC0 +PARSTATUS = $FCC2 +PARDATA = $FCC3 +HOWIE = $FCC4 + +; +; *** Mikey Addresses +; *** + +; Mikey timers + +; Logical timer names +TIMER0 = $FD00 +TIMER1 = $FD04 +TIMER2 = $FD08 +TIMER3 = $FD0C +TIMER4 = $FD10 +TIMER5 = $FD14 +TIMER6 = $FD18 +TIMER7 = $FD1C +HTIMER = TIMER0 ; horizontal line timer (timer 0) +VTIMER = TIMER2 ; vertical blank timer (timer 2) +STIMER = TIMER7 ; sound timer (timer 7) + +HTIMBKUP = $FD00 ; horizontal line timer (timer 0) +HTIMCTLA = $FD01 +HTIMCNT = $FD02 +HTIMCTLB = $FD03 +VTIMBKUP = $FD08 ; vertical blank timer (timer 2) +VTIMCTLA = $FD09 +VTIMCNT = $FD0A +VTIMCTLB = $FD0B +BAUDBKUP = $FD10 ; serial timer (timer 4) +STIMBKUP = $FD1C ; sound timer (timer 7) +STIMCTLA = $FD1D +STIMCNT = $FD1E +STIMCTLB = $FD1F + +TIM0BKUP = $FD00 +TIM0CTLA = $FD01 +TIM0CNT = $FD02 +TIM0CTLB = $FD03 +TIM1BKUP = $FD04 +TIM1CTLA = $FD05 +TIM1CNT = $FD06 +TIM1CTLB = $FD07 +TIM2BKUP = $FD08 +TIM2CTLA = $FD09 +TIM2CNT = $FD0A +TIM2CTLB = $FD0B +TIM3BKUP = $FD0C +TIM3CTLA = $FD0D +TIM3CNT = $FD0E +TIM3CTLB = $FD0F +TIM4BKUP = $FD10 +TIM4CTLA = $FD11 +TIM4CNT = $FD12 +TIM4CTLB = $FD13 +TIM5BKUP = $FD14 +TIM5CTLA = $FD15 +TIM5CNT = $FD16 +TIM5CTLB = $FD17 +TIM6BKUP = $FD18 +TIM6CTLA = $FD19 +TIM6CNT = $FD1A +TIM6CTLB = $FD1B +TIM7BKUP = $FD1C +TIM7CTLA = $FD1D +TIM7CNT = $FD1E +TIM7CTLB = $FD1F + +; Timer offsets +TIM_BACKUP = 0 +TIM_CONTROLA = 1 +TIM_COUNT = 2 +TIM_CONTROLB = 3 + +; TIM_CONTROLA control bits +ENABLE_INT = %10000000 +RESET_DONE = %01000000 +ENABLE_RELOAD = %00010000 +ENABLE_COUNT = %00001000 +AUD_CLOCK_MASK = %00000111 +; Clock settings +AUD_LINKING = %00000111 +AUD_64 = %00000110 +AUD_32 = %00000101 +AUD_16 = %00000100 +AUD_8 = %00000011 +AUD_4 = %00000010 +AUD_2 = %00000001 +AUD_1 = %00000000 + +; TIM_CONTROLB control bits +TIMER_DONE = %00001000 +LAST_CLOCK = %00000100 +BORROW_IN = %00000010 +BORROW_OUT = %00000001 + +; Mikey Audio + +AUDIO0 = $FD20 ; audio channel 0 +AUDIO1 = $FD28 ; audio channel 1 +AUDIO2 = $FD30 ; audio channel 2 +AUDIO3 = $FD38 ; audio channel 3 + +AUD0VOL = $FD20 +AUD0FEED = $FD21 +AUD0OUT = $FD22 +AUD0SHIFT = $FD23 +AUD0BKUP = $FD24 +AUD0CTLA = $FD25 +AUD0CNT = $FD26 +AUD0CTLB = $FD27 +AUD1VOL = $FD28 +AUD1FEED = $FD29 +AUD1OUT = $FD2A +AUD1SHIFT = $FD2B +AUD1BKUP = $FD2C +AUD1CTLA = $FD2D +AUD1CNT = $FD2E +AUD1CTLB = $FD2F +AUD2VOL = $FD30 +AUD2FEED = $FD31 +AUD2OUT = $FD32 +AUD2SHIFT = $FD33 +AUD2BKUP = $FD34 +AUD2CTLA = $FD35 +AUD2CNT = $FD36 +AUD2CTLB = $FD37 +AUD3VOL = $FD38 +AUD3FEED = $FD39 +AUD3OUT = $FD3A +AUD3SHIFT = $FD3B +AUD3BKUP = $FD3C +AUD3CTLA = $FD3D +AUD3CNT = $FD3E +AUD3CTLB = $FD3F + +; AUD_CONTROL bits are almost identical to TIM_CONTROLA bits. +; See TIM_CONTROLA above for the other definitions +FEEDBACK_7 = %10000000 +ENABLE_INTEGRATE = %00100000 + +; Stereo control registers follow +; Stereo capability does not exist in all Lynxes +; Left and right may be reversed, and if so will be corrected in a later +; release +ATTENREG0 = $FD40 ; Stereo attenuation registers +ATTENREG1 = $FD41 +ATTENREG2 = $FD42 +ATTENREG3 = $FD43 + +MPAN = $FD44 +MSTEREO = $FD50 +; Bit definitions for MPAN and MSTEREO registers +LEFT_ATTENMASK = %11110000 +RIGHT_ATTENMASK = %00001111 +LEFT3_SELECT = %10000000 +LEFT2_SELECT = %01000000 +LEFT1_SELECT = %00100000 +LEFT0_SELECT = %00010000 +RIGHT3_SELECT = %00001000 +RIGHT2_SELECT = %00000100 +RIGHT1_SELECT = %00000010 +RIGHT0_SELECT = %00000001 + +; Mikey interrupts + +INTRST = $FD80 +INTSET = $FD81 + +; Interrupt bits in INTRST and INTSET +TIMER0_INTERRUPT = %00000001 +TIMER1_INTERRUPT = %00000010 +TIMER2_INTERRUPT = %00000100 +TIMER3_INTERRUPT = %00001000 +TIMER4_INTERRUPT = %00010000 +TIMER5_INTERRUPT = %00100000 +TIMER6_INTERRUPT = %01000000 +TIMER7_INTERRUPT = %10000000 + +HBL_INTERRUPT = TIMER0_INTERRUPT +VBL_INTERRUPT = TIMER2_INTERRUPT +SERIAL_INTERRUPT = TIMER4_INTERRUPT +SND_INTERRUPT = TIMER7_INTERRUPT + +MAGRDY0 = $FD84 +MAGRDY1 = $FD85 +AUDIN = $FD86 +SYSCTL1 = $FD87 +; SYSCTL1 bit definitions +POWERON = %00000010 +CART_ADDR_STROBE = %00000001 + +MIKEYHREV = $FD88 +MIKEYSREV = $FD89 + +IODIR = $FD8A +IODAT = $FD8B +; IODIR and IODAT bit definitions +AUDIN_BIT = %00010000 ; Note that there is also the address AUDIN +READ_ENABLE = %00010000 ; Same bit for AUDIN_BIT +RESTLESS = %00001000 +NOEXP = %00000100 ; If set, redeye is not connected +CART_ADDR_DATA = %00000010 +CART_POWER_OFF = %00000010 ; Same bit for CART_ADDR_DATA +EXTERNAL_POWER = %00000001 + +SERCTL = $FD8C +; SERCTL bit definitions for write operations +TXINTEN = %10000000 +RXINTEN = %01000000 +PAREN = %00010000 +RESETERR = %00001000 +TXOPEN = %00000100 +TXBRK = %00000010 +PAREVEN = %00000001 +; SERCTL bit definitions for read operations +TXRDY = %10000000 +RXRDY = %01000000 +TXEMPTY = %00100000 +PARERR = %00010000 +OVERRUN = %00001000 +FRAMERR = %00000100 +RXBRK = %00000010 +PARBIT = %00000001 + +SERDAT = $FD8D +SDONEACK = $FD90 +CPUSLEEP = $FD91 +DISPCTL = $FD92 +; DISPCTL bit definitions +DISP_COLOR = %10000000 ; must be set to 1 +DISP_FOURBIT = %01000000 ; must be set to 1 +DISP_FLIP = %00100000 +DMA_ENABLE = %00010000 ; must be set to 1 + +PBKUP = $FD93 +DISPADRL = $FD94 +DISPADRH = $FD95 + +MTEST0 = $FD9C +; MTEST0 bit definitions +AT_CNT16 = %10000000 +AT_TEST = %01000000 +XCLKEN = %00100000 +UART_TURBO = %00010000 +ROM_SEL = %00001000 +ROM_TEST = %00000100 +M_TEST = %00000010 +CPU_TEST = %00000001 + +MTEST1 = $FD9D +; MTEST1 bit definitions +P_CNT16 = %01000000 +REF_CNT16 = %00100000 +VID_TRIG = %00010000 +REF_TRIG = %00001000 +VID_DMA_DIS = %00000100 +REF_FAST = %00000010 +REF_DIS = %00000001 + +MTEST2 = $FD9E +; MTEST2 bit definitions +V_STROBE = %00010000 +V_ZERO = %00001000 +H_120 = %00000100 +H_ZERO = %00000010 +V_BLANKEF = %00000001 + +PALETTE = $FDA0 ; hardware rgb palette +GCOLMAP = $FDA0 ; hardware rgb palette (green) +RBCOLMAP = $FDB0 ; hardware rgb palette (red-blue) + +; Memory mapping control and 6502 vectors + +MAPCTL = $FFF9 +; MAPCTL bit definitions +TURBO_DISABLE = %10000000 +VECTOR_SPACE = %00001000 ; 1 maps RAM into specified space +ROM_SPACE = %00000100 +MIKEY_SPACE = %00000010 +SUZY_SPACE = %00000001 + +VECTORS = $FFFB +INTVECTL = $FFFE +INTVECTH = $FFFF +RSTVECTL = $FFFC +RSTVECTH = $FFFD +NMIVECTL = $FFFA +NMIVECTH = $FFFB diff --git a/cc65/asminc/mega65.inc b/cc65/asminc/mega65.inc new file mode 100644 index 0000000..79a4e7b --- /dev/null +++ b/cc65/asminc/mega65.inc @@ -0,0 +1,239 @@ + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +TXTPTR := $3C ; Pointer into BASIC source code +STATUS := $90 ; Kernal I/O completion status +FNAM_LEN := $B7 ; Length of filename +SECADR := $B9 ; Secondary address +DEVNUM := $BA ; Device number +FNAM := $BB ; Address of filename +FNAM_BANK := $BE ; Bank for filename +KEY_COUNT := $D0 ; Number of keys in input buffer +FKEY_COUNT := $D1 ; Characters for function key +MODE := $D7 ; 40-/80-column mode (bit 7: 80 columns) +GRAPHM := $D8 ; Graphics mode flags (bits 5-7) +CHARDIS := $D9 ; Bit 2 shadow for location $01 +CURS_X := $EC ; Cursor column +CURS_Y := $EB ; Cursor row +SCREEN_PTR := $E0 ; Pointer to current char in text screen +CRAM_PTR := $E2 ; Pointer to current char in color RAM +CHARCOLOR := $F1 +RVS := $F3 ; Reverse output flag +SCROLL := $F8 ; Disable scrolling flag + +BASIC_BUF := $0200 ; Location of command-line +BASIC_BUF_LEN = 161 ; Maximum length of command-line + +FKEY_LEN := $1000 ; Function key lengths +FKEY_TEXT := $100A ; Function key texts + +PALFLAG := $1103 ; $FF=PAL, $00=NTSC +INIT_STATUS := $1104 ; Flags: Reset/Restore initiation status +TIME := $110C ; 60HZ clock + +KBDREPEAT := $111a +KBDREPEATRATE := $111b +KBDREPEATDELAY := $111c + +; --------------------------------------------------------------------------- +; Vectors + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 + +; --------------------------------------------------------------------------- +; I/O: VIC + +VIC := $D000 +VIC_SPR0_X := $D000 +VIC_SPR0_Y := $D001 +VIC_SPR1_X := $D002 +VIC_SPR1_Y := $D003 +VIC_SPR2_X := $D004 +VIC_SPR2_Y := $D005 +VIC_SPR3_X := $D006 +VIC_SPR3_Y := $D007 +VIC_SPR4_X := $D008 +VIC_SPR4_Y := $D009 +VIC_SPR5_X := $D00A +VIC_SPR5_Y := $D00B +VIC_SPR6_X := $D00C +VIC_SPR6_Y := $D00D +VIC_SPR7_X := $D00E +VIC_SPR7_Y := $D00F +VIC_SPR_HI_X := $D010 +VIC_SPR_ENA := $D015 +VIC_SPR_EXP_Y := $D017 +VIC_SPR_EXP_X := $D01D +VIC_SPR_MCOLOR := $D01C +VIC_SPR_BG_PRIO := $D01B +VIC_SPR_COLL := $D01E +VIC_SPR_BG_COLL := $D01F + +VIC_SPR_MCOLOR0 := $D025 +VIC_SPR_MCOLOR1 := $D026 + +VIC_SPR0_COLOR := $D027 +VIC_SPR1_COLOR := $D028 +VIC_SPR2_COLOR := $D029 +VIC_SPR3_COLOR := $D02A +VIC_SPR4_COLOR := $D02B +VIC_SPR5_COLOR := $D02C +VIC_SPR6_COLOR := $D02D +VIC_SPR7_COLOR := $D02E + +VIC_CTRL1 := $D011 +VIC_CTRL2 := $D016 + +VIC_HLINE := $D012 + +VIC_LPEN_X := $D013 +VIC_LPEN_Y := $D014 + +VIC_VIDEO_ADR := $D018 + +VIC_IRR := $D019 ; Interrupt request register +VIC_IMR := $D01A ; Interrupt mask register + +VIC_BORDERCOLOR := $D020 +VIC_BG_COLOR0 := $D021 +VIC_BG_COLOR1 := $D022 +VIC_BG_COLOR2 := $D023 +VIC_BG_COLOR3 := $D024 + + +; --------------------------------------------------------------------------- +; I/O: FDC + +FDC := $D080 + +; --------------------------------------------------------------------------- +; I/O: SID + +SID0 := $D400 +SID0_S1Lo := $D400 +SID0_S1Hi := $D401 +SID0_PB1Lo := $D402 +SID0_PB1Hi := $D403 +SID0_Ctl1 := $D404 +SID0_AD1 := $D405 +SID0_SUR1 := $D406 + +SID0_S2Lo := $D407 +SID0_S2Hi := $D408 +SID0_PB2Lo := $D409 +SID0_PB2Hi := $D40A +SID0_Ctl2 := $D40B +SID0_AD2 := $D40C +SID0_SUR2 := $D40D + +SID0_S3Lo := $D40E +SID0_S3Hi := $D40F +SID0_PB3Lo := $D410 +SID0_PB3Hi := $D411 +SID0_Ctl3 := $D412 +SID0_AD3 := $D413 +SID0_SUR3 := $D414 + +SID0_FltLo := $D415 +SID0_FltHi := $D416 +SID0_FltCtl := $D417 +SID0_Amp := $D418 +SID0_ADConv1 := $D419 +SID0_ADConv2 := $D41A +SID0_Noise := $D41B +SID0_Read3 := $D41C + +SID1 := $D420 +SID1_S1Lo := $D420 +SID1_S1Hi := $D421 +SID1_PB1Lo := $D422 +SID1_PB1Hi := $D423 +SID1_Ctl1 := $D424 +SID1_AD1 := $D425 +SID1_SUR1 := $D426 + +SID1_S2Lo := $D427 +SID1_S2Hi := $D428 +SID1_PB2Lo := $D429 +SID1_PB2Hi := $D42A +SID1_Ctl2 := $D42B +SID1_AD2 := $D42C +SID1_SUR2 := $D42D + +SID1_S3Lo := $D42E +SID1_S3Hi := $D42F +SID1_PB3Lo := $D430 +SID1_PB3Hi := $D431 +SID1_Ctl3 := $D432 +SID1_AD3 := $D433 +SID1_SUR3 := $D434 + +SID1_FltLo := $D435 +SID1_FltHi := $D436 +SID1_FltCtl := $D437 +SID1_Amp := $D438 +SID1_ADConv1 := $D439 +SID1_ADConv2 := $D43A +SID1_Noise := $D43B +SID1_Read3 := $D43C + +; --------------------------------------------------------------------------- +; I/O: Complex Interface Adapters + +CIA1 := $DC00 +CIA1_PRA := $DC00 ; Port A +CIA1_PRB := $DC01 ; Port B +CIA1_DDRA := $DC02 ; Data direction register for port A +CIA1_DDRB := $DC03 ; Data direction register for port B +CIA1_TA := $DC04 ; 16-bit timer A +CIA1_TB := $DC06 ; 16-bit timer B +CIA1_TOD10 := $DC08 ; Time-of-day tenths of a second +CIA1_TODSEC := $DC09 ; Time-of-day seconds +CIA1_TODMIN := $DC0A ; Time-of-day minutes +CIA1_TODHR := $DC0B ; Time-of-day hours +CIA1_SDR := $DC0C ; Serial data register +CIA1_ICR := $DC0D ; Interrupt control register +CIA1_CRA := $DC0E ; Control register for timer A +CIA1_CRB := $DC0F ; Control register for timer B + +CIA2 := $DD00 +CIA2_PRA := $DD00 +CIA2_PRB := $DD01 +CIA2_DDRA := $DD02 +CIA2_DDRB := $DD03 +CIA2_TA := $DD04 +CIA2_TB := $DD06 +CIA2_TOD10 := $DD08 +CIA2_TODSEC := $DD09 +CIA2_TODMIN := $DD0A +CIA2_TODHR := $DD0B +CIA2_SDR := $DD0C +CIA2_ICR := $DD0D +CIA2_CRA := $DD0E +CIA2_CRB := $DD0F + +; --------------------------------------------------------------------------- +; I/O: DMA + +DMA := $D700 + + +; --------------------------------------------------------------------------- +; Processor Port at $01 + +LORAM = $01 ; Enable the basic rom +HIRAM = $02 ; Enable the kernal rom +IOEN = $04 ; Enable I/O +CASSDATA = $08 ; Cassette data +CASSPLAY = $10 ; Cassette: Play +CASSMOT = $20 ; Cassette motor on +TP_FAST = $80 ; Switch Rossmoeller TurboProcess to fast mode + +RAMONLY = $F8 ; (~(LORAM | HIRAM | IOEN)) & $FF + +; temporary, to get conio working +XSIZE = 80 +YSIZE = 50 diff --git a/cc65/asminc/modload.inc b/cc65/asminc/modload.inc new file mode 100644 index 0000000..168dd67 --- /dev/null +++ b/cc65/asminc/modload.inc @@ -0,0 +1,78 @@ +;*****************************************************************************/ +;* */ +;* modload.inc */ +;* */ +;* o65 module loader interface for cc65 */ +;* */ +;* */ +;* */ +;* (C) 2002 Ullrich von Bassewitz */ +;* Wacholderweg 14 */ +;* D-70597 Stuttgart */ +;* EMail: uz@musoftware.de */ +;* */ +;* */ +;* This software is provided 'as-is', without any expressed or implied */ +;* warranty. In no event will the authors be held liable for any damages */ +;* arising from the use of this software. */ +;* */ +;* Permission is granted to anyone to use this software for any purpose, */ +;* including commercial applications, and to alter it and redistribute it */ +;* freely, subject to the following restrictions: */ +;* */ +;* 1. The origin of this software must not be misrepresented; you must not */ +;* claim that you wrote the original software. If you use this software */ +;* in a product, an acknowledgment in the product documentation would be */ +;* appreciated but is not required. */ +;* 2. Altered source versions must be plainly marked as such, and must not */ +;* be misrepresented as being the original software. */ +;* 3. This notice may not be removed or altered from any source */ +;* distribution. */ +;* */ +;*****************************************************************************/ + + + +; Exports structures and functions to load relocatable o65 modules at +; runtime. + + + +; Offsets for the mod_ctrl struct. This struct is passed to the module loader. +; It contains stuff, the loader needs to work, and another area where the +; loader will place informational data if it was successful. You will have to +; check the return code of mod_load before accessing any of these additional +; struct members. +.struct MOD_CTRL + READ .addr + CALLERDATA .word + MODULE .addr ; Pointer to module data + MODULE_SIZE .word ; Total size of loaded module + MODULE_ID .word +.endstruct + +; unsigned char mod_load (struct mod_ctrl* ctrl); +; /* Load a module into memory and relocate it. The function will return an +; * error code (see below). If MLOAD_OK is returned, the outgoing fields in +; * the passed mod_ctrl struct contain information about the module just +; * loaded. +; */ +.global _mod_load + +; void mod_free (void* module); +; /* Free a loaded module. Note: The given pointer is the pointer to the +; * module memory, not a pointer to a control structure. +; */ +.global _mod_free + +; Errors +.enum + MLOAD_OK ; Module load successful + MLOAD_ERR_READ ; Read error + MLOAD_ERR_HDR ; Header error + MLOAD_ERR_OS ; Wrong OS + MLOAD_ERR_FMT ; Data format error + MLOAD_ERR_MEM ; Not enough memory +.endenum + + diff --git a/cc65/asminc/module.mac b/cc65/asminc/module.mac new file mode 100644 index 0000000..d844ec1 --- /dev/null +++ b/cc65/asminc/module.mac @@ -0,0 +1,13 @@ +.ifndef DYN_DRV + DYN_DRV = 1 +.endif + +.macro module_header module_label + .if DYN_DRV + .segment "HEADER" + .else + .data + .export module_label + module_label: + .endif +.endmacro diff --git a/cc65/asminc/mouse-kernel.inc b/cc65/asminc/mouse-kernel.inc new file mode 100644 index 0000000..ab4790d --- /dev/null +++ b/cc65/asminc/mouse-kernel.inc @@ -0,0 +1,184 @@ +;/*****************************************************************************/ +;/* */ +;/* mouse-kernel.inc */ +;/* */ +;/* Mouse API */ +;/* */ +;/* */ +;/* */ +;/* (C) 2003-2009, Ullrich von Bassewitz */ +;/* Roemerstrasse 52 */ +;/* D-70794 Filderstadt */ +;/* EMail: uz@cc65.org */ +;/* */ +;/* */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + + +;------------------------------------------------------------------------------ +; Error codes + +.enum + MOUSE_ERR_OK ; No error + MOUSE_ERR_NO_DRIVER ; No driver available + MOUSE_ERR_CANNOT_LOAD ; Error loading driver + MOUSE_ERR_INV_DRIVER ; Invalid driver + MOUSE_ERR_NO_DEVICE ; Mouse hardware not found + MOUSE_ERR_INV_IOCTL ; Invalid ioctl code + + MOUSE_ERR_COUNT ; Special: Number of error codes +.endenum + +;------------------------------------------------------------------------------ +; The driver header + +.struct MOUSE_HDR + ID .byte 3 ; Contains 0x6D, 0x6F, 0x75 ("mou") + VERSION .byte 1 ; Interface version + LIBREF .addr ; Library reference + JUMPTAB .struct + INSTALL .addr + UNINSTALL .addr + HIDE .addr + SHOW .addr + SETBOX .addr + GETBOX .addr + MOVE .addr + BUTTONS .addr + POS .addr + INFO .addr + IOCTL .addr + IRQ .addr + .endstruct + FLAGS .byte ; Mouse driver flags + CALLBACKS .struct ; Jump instructions + .byte ; JMP opcode + CHIDE .addr ; Jump address + .byte + CSHOW .addr + .byte + CPREP .addr + .byte + CDRAW .addr + .byte + CMOVEX .addr + .byte + CMOVEY .addr + .endstruct +.endstruct + +;------------------------------------------------------------------------------ +; The mouse callback structure + +.struct MOUSE_CALLBACKS + HIDE .addr ; Hide the mouse cursor + SHOW .addr ; Show the mouse cursor + PREP .addr ; Prepare to move the mouse cursor + DRAW .addr ; Draw the mouse cursor + MOVEX .addr ; Move the mouse cursor to X coord + MOVEY .addr ; Move the mouse cursor to Y coord +.endstruct + +;------------------------------------------------------------------------------ +; The mouse API version, stored in MOUSE_HDR::VERSION + +MOUSE_API_VERSION = $06 + +;------------------------------------------------------------------------------ +; Bitmapped mouse driver flags, stored in MOUSE_HDR::FLAGS. +; Note: If neither of MOUSE_FLAG_XXX_IRQ is set, no interrupts are supplied +; to the driver. If one of the bits is set, the interrupt vector MUST be +; valid. +; Beware: Some of the bits are tested using the BIT instruction, so do not +; change the values without checking the code! + +MOUSE_FLAG_EARLY_IRQ = $40 ; Enable IRQ *before* calling INSTALL +MOUSE_FLAG_LATE_IRQ = $80 ; Enable IRQ *after* calling INSTALL + +;------------------------------------------------------------------------------ +; Mouse button definitions + +MOUSE_BTN_LEFT = $10 +MOUSE_BTN_RIGHT = $01 + +;------------------------------------------------------------------------------ +; Structures used to return data from the mouse driver + +.struct MOUSE_POS + XCOORD .word + YCOORD .word +.endstruct + +.struct MOUSE_INFO + POS .tag MOUSE_POS + BUTTONS .byte +.endstruct + +.struct MOUSE_BOX + MINX .word + MINY .word + MAXX .word + MAXY .word +.endstruct + +;------------------------------------------------------------------------------ +; Variables + + .global _mouse_drv ; Pointer to driver + .global _mouse_hidden ; Counter, 0 = mouse is visible + +;------------------------------------------------------------------------------ +; C callable functions + + .global _mouse_load_driver + .global _mouse_unload + .global _mouse_install + .global _mouse_uninstall + .global _mouse_geterrormsg + .global _mouse_hide + .global _mouse_show + .global _mouse_setbox + .global _mouse_getbox + .global _mouse_move + .global _mouse_buttons + .global _mouse_pos + .global _mouse_info + .global _mouse_ioctl + + .global _mouse_clear_ptr + +;------------------------------------------------------------------------------ +; Driver entry points (asm callable) + + .global mouse_install + .global mouse_uninstall + .global mouse_hide + .global mouse_show + .global mouse_setbox + .global mouse_getbox + .global mouse_move + .global mouse_buttons + .global mouse_pos + .global mouse_info + .global mouse_ioctl diff --git a/cc65/asminc/nes.inc b/cc65/asminc/nes.inc new file mode 100644 index 0000000..cc83d7c --- /dev/null +++ b/cc65/asminc/nes.inc @@ -0,0 +1,93 @@ +; +; NES definitions. By Groepaz/Hitmem. +; + + +;; FIXME: optimize zeropage usage + +SCREEN_PTR = $62 ;2 +CRAM_PTR = $64 ;2 +CHARCOLOR = $66 +BGCOLOR = $67 +RVS = $68 +CURS_X = $69 +CURS_Y = $6a + +tickcount = $6b ;2 + +VBLANK_FLAG = $70 + +ringbuff = $0200 +ringwrite = $71 +ringread = $72 +ringcount = $73 + +ppuhi = $74 +ppulo = $75 +ppuval = $76 + +screenrows = (30-1) +charsperline = 32 +xsize = charsperline + +;; PPU defines + +PPU_CTRL1 = $2000 +PPU_CTRL2 = $2001 +PPU_STATUS = $2002 +PPU_SPR_ADDR = $2003 +PPU_SPR_IO = $2004 +PPU_VRAM_ADDR1 = $2005 +PPU_VRAM_ADDR2 = $2006 +PPU_VRAM_IO = $2007 + +;; APU defines + +APU_PULSE1CTRL = $4000 ; Pulse #1 Control Register (W) +APU_PULSE1RAMP = $4001 ; Pulse #1 Ramp Control Register (W) +APU_PULSE1FTUNE = $4002 ; Pulse #1 Fine Tune (FT) Register (W) +APU_PULSE1CTUNE = $4003 ; Pulse #1 Coarse Tune (CT) Register (W) +APU_PULSE2CTRL = $4004 ; Pulse #2 Control Register (W) +APU_PULSE2RAMP = $4005 ; Pulse #2 Ramp Control Register (W) +APU_PULSE2FTUNE = $4006 ; Pulse #2 Fine Tune Register (W) +APU_PULSE2STUNE = $4007 ; Pulse #2 Coarse Tune Register (W) +APU_TRICTRL1 = $4008 ; Triangle Control Register #1 (W) +APU_TRICTRL2 = $4009 ; Triangle Control Register #2 (?) +APU_TRIFREQ1 = $400A ; Triangle Frequency Register #1 (W) +APU_TRIFREQ2 = $400B ; Triangle Frequency Register #2 (W) +APU_NOISECTRL = $400C ; Noise Control Register #1 (W) +;;APU_ = $400D ; Unused (???) +APU_NOISEFREQ1 = $400E ; Noise Frequency Register #1 (W) +APU_NOISEFREQ2 = $400F ; Noise Frequency Register #2 (W) +APU_MODCTRL = $4010 ; Delta Modulation Control Register (W) +APU_MODDA = $4011 ; Delta Modulation D/A Register (W) +APU_MODADDR = $4012 ; Delta Modulation Address Register (W) +APU_MODLEN = $4013 ; Delta Modulation Data Length Register (W) +APU_SPR_DMA = $4014 ; Sprite DMA Register (W) +APU_CHANCTRL = $4015 ; Sound/Vertical Clock Signal Register (R) +APU_PAD1 = $4016 ; Joypad #1 (RW) +APU_PAD2 = $4017 ; Joypad #2/SOFTCLK (RW) + + +CH_HLINE = 11 +CH_VLINE = 14 +CH_ULCORNER = 176 +CH_URCORNER = 174 +CH_LLCORNER = 173 +CH_LRCORNER = 189 +CH_TTEE = 178 +CH_RTEE = 179 +CH_BTEE = 177 +CH_LTEE = 171 +CH_CROSS = 123 +CH_CURS_UP = 145 +CH_CURS_DOWN = 17 +CH_CURS_LEFT = 157 +CH_CURS_RIGHT = 29 +CH_PI = 126 +CH_DEL = 20 +CH_INS = 148 +CH_ENTER = 10 +CH_STOP = 3 +CH_ESC = 27 + diff --git a/cc65/asminc/o65.inc b/cc65/asminc/o65.inc new file mode 100644 index 0000000..6e0caa7 --- /dev/null +++ b/cc65/asminc/o65.inc @@ -0,0 +1,150 @@ +;*****************************************************************************/ +;* */ +;* o65.inc */ +;* */ +;* Definitions for the o65 file format */ +;* */ +;* */ +;* */ +;* (C) 2002-2009, Ullrich von Bassewitz */ +;* Roemerstrasse 52 */ +;* D-70794 Filderstadt */ +;* EMail: uz@cc65.org */ +;* */ +;* */ +;* This software is provided 'as-is', without any expressed or implied */ +;* warranty. In no event will the authors be held liable for any damages */ +;* arising from the use of this software. */ +;* */ +;* Permission is granted to anyone to use this software for any purpose, */ +;* including commercial applications, and to alter it and redistribute it */ +;* freely, subject to the following restrictions: */ +;* */ +;* 1. The origin of this software must not be misrepresented; you must not */ +;* claim that you wrote the original software. If you use this software */ +;* in a product, an acknowledgment in the product documentation would be */ +;* appreciated but is not required. */ +;* 2. Altered source versions must be plainly marked as such, and must not */ +;* be misrepresented as being the original software. */ +;* 3. This notice may not be removed or altered from any source */ +;* distribution. */ +;* */ +;*****************************************************************************/ + + + +; This files exports structures and constants to handle the o65 relocatable +; file format as defined by Andre Fachat. + + + +; The o65 header structure (6502 format) +.struct O65_HDR + MARKER .byte 2 ; Non-C64 marker: $01 $00 + MAGIC .byte 3 ; o65 magic: "o65" + VERSION .byte 1 ; Version number + MODE .word ; Mode word + TBASE .word ; Original text (code) segment address + TLEN .word ; Size of text (code) segment + DBASE .word ; Original data segment address + DLEN .word ; Size of data segment + BBASE .word ; Original bss segment address + BLEN .word ; Size of bss segment + ZBASE .word ; Original zp segment address + ZLEN .word ; Size of zp segment + STACK .word ; Stacksize needed +.endstruct + +; Marker, magic and version number +O65_MARKER_0 = $01 +O65_MARKER_1 = $00 +O65_MAGIC_0 = $6F ; 'o' +O65_MAGIC_1 = $36 ; '6' +O65_MAGIC_2 = $35 ; '5' +O65_VERSION = $00 + +; Defines for the mode word +O65_CPU_65816 = $8000 ; Executable is for 65816 +O65_CPU_6502 = $0000 ; Executable is for the 6502 +O65_CPU_MASK = $8000 ; Mask to extract CPU type + +O65_RELOC_PAGE = $4000 ; Page wise relocation +O65_RELOC_BYTE = $0000 ; Byte wise relocation +O65_RELOC_MASK = $4000 ; Mask to extract relocation type + +O65_SIZE_32BIT = $2000 ; All size words are 32bit +O65_SIZE_16BIT = $0000 ; All size words are 16bit +O65_SIZE_MASK = $2000 ; Mask to extract size + +O65_FTYPE_OBJ = $1000 ; Object file +O65_FTYPE_EXE = $0000 ; Executable file +O65_FTYPE_MASK = $1000 ; Mask to extract type + +O65_ADDR_SIMPLE = $0800 ; Simple addressing +O65_ADDR_DEFAULT = $0000 ; Default addressing +O65_ADDR_MASK = $0800 ; Mask to extract addressing + +O65_CHAIN = $0400 ; Chained file, another one follows +O65_CHAIN_MASK = $0400 ; Mask to extract chain flag + +O65_BSSZERO = $0200 ; BSS segment must be zeroed +O65_BSSZERO_MASK = $0200 ; Mask to extract bss zero flag + +; The following is used if O65_CPU == 6502 +O65_CPU2_6502 = $0000 ; Executable is for 6502 +O65_CPU2_65C02 = $0010 ; Executable is for 65C02 +O65_CPU2_65SC02 = $0020 ; Executable is for 65SC02 +O65_CPU2_65CE02 = $0030 ; Executable is for 65CE02 +O65_CPU2_6502X = $0040 ; Executable is for NMOS 6502 +O65_CPU2_65816_EMU = $0050 ; Executable is for 65816 in emul mode +O65_CPU2_MASK = $00F0 ; Mask to extract CPU2 field + +O65_ALIGN_1 = $0000 ; Bytewise alignment +O65_ALIGN_2 = $0001 ; Align words +O65_ALIGN_4 = $0002 ; Align longwords +O65_ALIGN_256 = $0003 ; Align pages (256 bytes) +O65_ALIGN_MASK = $0003 ; Mask to extract alignment + +; The mode word as generated by the ld65 linker +O65_MODE_CC65 = O65_CPU_6502 | O65_RELOC_BYTE | O65_SIZE_16BIT | O65_FTYPE_EXE | O65_ADDR_SIMPLE | O65_ALIGN_1 + +; Relocation type codes +O65_RTYPE_WORD = $80 +O65_RTYPE_HIGH = $40 +O65_RTYPE_LOW = $20 +O65_RTYPE_SEGADDR = $C0 +O65_RTYPE_SEG = $A0 +O65_RTYPE_MASK = $E0 + +; Segment IDs +O65_SEGID_UNDEF = $00 +O65_SEGID_ABS = $01 +O65_SEGID_TEXT = $02 +O65_SEGID_DATA = $03 +O65_SEGID_BSS = $04 +O65_SEGID_ZP = $05 +O65_SEGID_MASK = $07 + +; Option tags +O65_OPT_FILENAME = 0 +O65_OPT_OS = 1 +O65_OPT_ASM = 2 +O65_OPT_AUTHOR = 3 +O65_OPT_TIMESTAMP = 4 + +; Operating system codes for O65_OPT_OS +O65_OS_OSA65 = 1 +O65_OS_LUNIX = 2 +O65_OS_CC65 = 3 +O65_OS_OPENCBM = 4 + +; Load errors +O65_LOAD_OK = 0 ; Module load successful +O65_LOAD_ERR_READ = 1 ; Read error +O65_LOAD_ERR_HDR = 2 ; Header error +O65_LOAD_ERR_OS = 3 ; Wrong OS +O65_LOAD_ERR_FMT = 4 ; Data format error +O65_LOAD_ERR_MEM = 5 ; Not enough memory + + + diff --git a/cc65/asminc/opcodes.inc b/cc65/asminc/opcodes.inc new file mode 100644 index 0000000..a5406e5 --- /dev/null +++ b/cc65/asminc/opcodes.inc @@ -0,0 +1,514 @@ +; opcodes.inc +; ca65 6502 - opcode definitions, mainly for self modifying code +; +; Christian Krüger, latest change: 18-Sep-2010 +; +; This software is provided 'as-is', without any expressed or implied +; warranty. In no event will the authors be held liable for any damages +; arising from the use of this software. +; +; Permission is granted to anyone to use this software for any purpose, +; including commercial applications, and to alter it and redistribute it +; freely, subject to the following restrictions: +; +; 1. The origin of this software must not be misrepresented; you must not +; claim that you wrote the original software. If you use this software +; in a product, an acknowledgment in the product documentation would be +; appreciated but is not required. +; 2. Altered source versions must be plainly marked as such, and must not +; be misrepresented as being the original software. +; 3. This notice may not be removed or altered from any source +; distribution. +; + +; Opcode-Table +; ------------ +; Post fix explanation: +; imm = #$00 +; zp = $00 +; zpx = $00,X +; zpy = $00,Y +; izp = ($00) +; izx = ($00,X) +; izy = ($00),Y +; abs = $0000 +; abx = $0000,X +; aby = $0000,Y +; ind = ($0000) +; iax = ($0000,X) +; rel = $0000 (PC-relative) (supressed here) + +OPC_BRK = $00 +OPC_ORA_izx = $01 +OPC_ORA_zp = $05 +OPC_ASL_zp = $06 +OPC_PHP = $08 +OPC_ORA_imm = $09 +OPC_ASL = $0A +OPC_ORA_abs = $0D +OPC_ASL_abs = $0E + +OPC_BPL = $10 +OPC_ORA_izy = $11 +OPC_ORA_zpx = $15 +OPC_ASL_zpx = $16 +OPC_CLC = $18 +OPC_ORA_aby = $19 +OPC_ORA_abx = $1D +OPC_ASL_abx = $1E + +OPC_JSR_abs = $20 +OPC_AND_izx = $21 +OPC_BIT_zp = $24 +OPC_AND_zp = $25 +OPC_ROL_zp = $26 +OPC_PLP = $28 +OPC_AND_imm = $29 +OPC_ROL = $2A +OPC_BIT_abs = $2C +OPC_AND_abs = $2D +OPC_ROL_abs = $2E + +OPC_BMI = $30 +OPC_AND_izy = $31 +OPC_AND_zpx = $35 +OPC_ROL_zpx = $36 +OPC_SEC = $38 +OPC_AND_aby = $39 +OPC_AND_abx = $3D +OPC_ROL_abx = $3E + + +OPC_RTI = $40 +OPC_EOR_izx = $41 +OPC_EOR_zp = $45 +OPC_LSR_zp = $46 +OPC_PHA = $48 +OPC_EOR_imm = $49 +OPC_LSR = $4A +OPC_JMP_abs = $4C +OPC_EOR_abs = $4D +OPC_LSR_abs = $4E + +OPC_BVC = $50 +OPC_EOR_izy = $51 +OPC_EOR_zpx = $55 +OPC_LSR_zpx = $56 +OPC_CLI = $58 +OPC_EOR_aby = $59 +OPC_EOR_abx = $5D +OPC_LSR_abx = $5E + +OPC_RTS = $60 +OPC_ADC_izx = $61 +OPC_ADC_zp = $65 +OPC_ROR_zp = $66 +OPC_PLA = $68 +OPC_ADC_imm = $69 +OPC_ROR = $6A +OPC_JMP_ind = $6C +OPC_ADC_abs = $6D +OPC_ROR_abs = $6E + +OPC_BVS = $70 +OPC_ADC_izy = $71 +OPC_ADC_zpx = $75 +OPC_ROR_zpx = $76 +OPC_SEI = $78 +OPC_ADC_aby = $79 +OPC_ADC_abx = $7D +OPC_ROR_abx = $7E + +OPC_STA_izx = $81 +OPC_STY_zp = $84 +OPC_STA_zp = $85 +OPC_STX_zp = $86 +OPC_DEY = $88 +OPC_TXA = $8A +OPC_STY_abs = $8C +OPC_STA_abs = $8D +OPC_STX_abs = $8E + +OPC_BCC = $90 +OPC_STA_izy = $91 +OPC_STY_zpx = $94 +OPC_STA_zpx = $95 +OPC_STX_zpy = $96 +OPC_TYA = $98 +OPC_STA_aby = $99 +OPC_TXS = $9A +OPC_STA_abx = $9D + +OPC_LDY_imm = $A0 +OPC_LDA_izx = $A1 +OPC_LDX_imm = $A2 +OPC_LDY_zp = $A4 +OPC_LDA_zp = $A5 +OPC_LDX_zp = $A6 +OPC_TAY = $A8 +OPC_LDA_imm = $A9 +OPC_TAX = $AA +OPC_LDY_abs = $AC +OPC_LDA_abs = $AD +OPC_LDX_abs = $AE + +OPC_BCS = $B0 +OPC_LDA_izy = $B1 +OPC_LDY_zpx = $B4 +OPC_LDA_zpx = $B5 +OPC_LDX_zpy = $B6 +OPC_CLV = $B8 +OPC_LDA_aby = $B9 +OPC_TSX = $BA +OPC_LDY_abx = $BC +OPC_LDA_abx = $BD +OPC_LDX_aby = $BE + +OPC_CPY_imm = $C0 +OPC_CMP_izx = $C1 +OPC_CPY_zp = $C4 +OPC_CMP_zp = $C5 +OPC_DEC_zp = $C6 +OPC_INY = $C8 +OPC_CMP_imm = $C9 +OPC_DEX = $CA +OPC_CPY_abs = $CC +OPC_CMP_abs = $CD +OPC_DEC_abs = $CE + +OPC_BNE = $D0 +OPC_CMP_izy = $D1 +OPC_CMP_zpx = $D5 +OPC_DEC_zpx = $D6 +OPC_CLD = $D8 +OPC_CMP_aby = $D9 +OPC_CMP_abx = $DD +OPC_DEC_abx = $DE + +OPC_CPX_imm = $E0 +OPC_SBC_izx = $E1 +OPC_CPX_zp = $E4 +OPC_SBC_zp = $E5 +OPC_INC_zp = $E6 +OPC_INX = $E8 +OPC_SBC_imm = $E9 +OPC_NOP = $EA +OPC_CPX_abs = $EC +OPC_SBC_abs = $ED +OPC_INC_abs = $EE + + +OPC_BEQ = $F0 +OPC_SBC_izy = $F1 +OPC_SBC_zpx = $F5 +OPC_INC_zpx = $F6 +OPC_SED = $F8 +OPC_SBC_aby = $F9 +OPC_SBC_abx = $FD +OPC_INC_abx = $FE + + +.if (.cpu .bitand ::CPU_ISET_65SC02) + +; OPC_NOP = $02 ; doublet +; OPC_NOP = $03 ; doublet +OPC_TSB_zp = $04 +; OPC_NOP = $0B ; doublet +OPC_TSB_abs = $0C + +OPC_ORA_izp = $12 +; OPC_NOP = $13 ; doublet +OPC_TRB_zp = $14 +OPC_INC = $1A +; OPC_NOP = $1B ; doublet +OPC_TRB_abs = $1C + +; OPC_NOP = $22 ; doublet +; OPC_NOP = $23 ; doublet +; OPC_NOP = $2B ; doublet + +OPC_AND_izp = $32 +; OPC_NOP = $33 ; doublet +OPC_BIT_zpx = $34 +OPC_DEC = $3A +; OPC_NOP = $3B ; doublet +OPC_BIT_abx = $3C + +; OPC_NOP = $42 ; doublet +; OPC_NOP = $43 ; doublet +; OPC_NOP = $44 ; doublet +; OPC_NOP = $4B ; doublet + +OPC_EOR_izp = $52 +; OPC_NOP = $53 ; doublet +; OPC_NOP = $54 ; doublet +; OPC_NOP = $5A ; doublet +; OPC_NOP = $5B ; doublet + +; OPC_NOP = $62 ; doublet +; OPC_NOP = $63 ; doublet +OPC_STZ_zp = $64 +; OPC_NOP = $6B ; doublet + +OPC_ADC_izp = $72 +; OPC_NOP = $73 ; doublet +OPC_STZ_zpx = $74 +OPC_PLY = $7A +; OPC_NOP = $7B ; doublet +OPC_JMP_iax = $7C + +OPC_BRA = $80 +; OPC_NOP = $82 ; doublet +; OPC_NOP = $83 ; doublet +OPC_BIT_imm = $89 +; OPC_NOP = $8B ; doublet + +OPC_STA_izp = $92 +; OPC_NOP = $93 ; doublet +; OPC_NOP = $9B ; doublet +OPC_STZ_abs = $9C +OPC_STZ_abx = $9E + +; OPC_NOP = $A3 ; doublet +; OPC_NOP = $AB ; doublet + +OPC_LDA_izp = $B2 +; OPC_NOP = $B3 ; doublet +; OPC_NOP = $BB ; doublet + +; OPC_NOP = $C2 ; doublet +; OPC_NOP = $C3 ; doublet +; OPC_NOP = $CB ; doublet + +OPC_CMP_izp = $D2 +; OPC_NOP = $D3 ; doublet +; OPC_NOP = $D4 ; doublet +OPC_PHX = $DA +; OPC_NOP = $DB ; doublet +; OPC_NOP = $DC ; doublet + +; OPC_NOP = $E2 ; doublet +; OPC_NOP = $E3 ; doublet +; OPC_NOP = $EB ; doublet + +OPC_SBC_izp = $F2 +; OPC_NOP = $F3 ; doublet +; OPC_NOP = $F4 ; doublet +OPC_PLX = $FA +; OPC_NOP = $FB ; doublet +; OPC_NOP = $FC ; doublet + + +.if (.cpu .bitand ::CPU_ISET_65C02) + +; bit instructions for 65C02 + +OPC_RMB0 = $07 +OPC_RMB1 = $17 +OPC_RMB2 = $27 +OPC_RMB3 = $37 +OPC_RMB4 = $47 +OPC_RMB5 = $57 +OPC_RMB6 = $67 +OPC_RMB7 = $77 + +OPC_SMB0 = $87 +OPC_SMB1 = $97 +OPC_SMB2 = $A7 +OPC_SMB3 = $B7 +OPC_SMB4 = $C7 +OPC_SMB5 = $D7 +OPC_SMB6 = $E7 +OPC_SMB7 = $F7 + +OPC_BBR0 = $0F +OPC_BBR1 = $1F +OPC_BBR2 = $2F +OPC_BBR3 = $3F +OPC_BBR4 = $4F +OPC_BBR5 = $5F +OPC_BBR6 = $6F +OPC_BBR7 = $7F + +OPC_BBS0 = $8F +OPC_BBS1 = $9F +OPC_BBS2 = $AF +OPC_BBS3 = $BF +OPC_BBS4 = $CF +OPC_BBS5 = $DF +OPC_BBS6 = $EF +OPC_BBS7 = $FF + +.else + +; no bit instructions for 65SC02 + +; OPC_NOP = $07 ; doublet +; OPC_NOP = $17 ; doublet +; OPC_NOP = $27 ; doublet +; OPC_NOP = $37 ; doublet +; OPC_NOP = $47 ; doublet +; OPC_NOP = $57 ; doublet +; OPC_NOP = $67 ; doublet +; OPC_NOP = $77 ; doublet +; OPC_NOP = $87 ; doublet +; OPC_NOP = $97 ; doublet +; OPC_NOP = $A7 ; doublet +; OPC_NOP = $B7 ; doublet +; OPC_NOP = $C7 ; doublet +; OPC_NOP = $D7 ; doublet +; OPC_NOP = $E7 ; doublet +; OPC_NOP = $F7 ; doublet +; OPC_NOP = $0F ; doublet +; OPC_NOP = $1F ; doublet +; OPC_NOP = $2F ; doublet +; OPC_NOP = $3F ; doublet +; OPC_NOP = $4F ; doublet +; OPC_NOP = $5F ; doublet +; OPC_NOP = $6F ; doublet +; OPC_NOP = $7F ; doublet +; OPC_NOP = $8F ; doublet +; OPC_NOP = $9F ; doublet +; OPC_NOP = $AF ; doublet +; OPC_NOP = $BF ; doublet +; OPC_NOP = $CF ; doublet +; OPC_NOP = $DF ; doublet +; OPC_NOP = $EF ; doublet +; OPC_NOP = $FF ; doublet + +.endif + +.elseif (.cpu .bitand ::CPU_ISET_6502X) + +; stable, undocumented opcodes + +; OPC_KIL = $02 ; unstable +OPC_SLO_izx = $03 +OPC_NOP_zp = $04 +OPC_SLO_zp = $07 +OPC_ANC_imm = $0B +OPC_NOP_abs = $0C +OPC_SLO_abs = $0F + +; OPC_KIL = $12 ; unstable +OPC_SLO_izy = $13 +OPC_NOP_zpx = $14 +OPC_SLO_zpx = $17 +;OPC_NOP = $1A +OPC_SLO_aby = $1B +OPC_NOP_abx = $1C +OPC_SLO_abx = $1F + +; OPC_KIL = $22 ; unstable +OPC_RLA_izx = $23 +OPC_RLA_zp = $27 +OPC_ANC_imm = $2B +OPC_RLA_abs = $2F + +; OPC_KIL = $32 ; unstable +OPC_RLA_izy = $33 +OPC_NOP_zpx = $34 +OPC_RLA_zpx = $37 +; OPC_NOP = $3A ; doublet +OPC_RLA_aby = $3B +OPC_NOP_abx = $3C +OPC_RLA_abx = $3F + +; OPC_KIL = $42 ; unstable +OPC_SRE_izx = $43 +OPC_NOP_zp = $44 +OPC_SRE_zp = $47 +OPC_ALR_imm = $4B +OPC_SRE_abs = $4F + +; OPC_KIL = $52 ; unstable +OPC_SRE_izy = $53 +OPC_NOP_zpx = $54 +OPC_SRE_zpx = $57 +; OPC_NOP = $5A ; doublet +OPC_SRE_aby = $5B +OPC_NOP_abx = $5C +OPC_SRE_abx = $5F + +; OPC_KIL = $62 +OPC_RRA_izx = $63 +OPC_NOP_zp = $64 +OPC_RRA_zp = $67 +OPC_ARR_imm = $6B +OPC_RRA_abs = $6F + +; OPC_KIL = $72 +OPC_RRA_izy = $73 +OPC_NOP_zpx = $74 +OPC_RRA_zpx = $77 +; OPC_NOP = $7A ; doublet +OPC_RRA_aby = $7B +OPC_NOP_abx = $7C +OPC_RRA_abx = $7F + +OPC_NOP_imm = $80 +; OPC_NOP_imm = $82 ; doublet +OPC_SAX_izx = $83 +OPC_SAX_zp = $87 +; OPC_NOP_imm = $89 ; doublet +; OPC_XAA = $8B ; unstable +OPC_SAX_abs = $8F + +; OPC_KIL = $92 ; unstable +; OPC_AHX_izy = $93 ; unstable +OPC_SAX_zpy = $97 +; OPC_TAS_aby = $9B ; unstable +; OPC_SHY_abx = $9C ; unstable +; OPC_SHX_aby = $9E ; unstable +; OPC_AHX_aby = $9F ; unstable + +OPC_LAX_izx = $A3 +OPC_LAX_zp = $A7 +; OPC_LAX_imm = $AB ; unstable +OPC_LAX_abs = $AF + +; OPC_KIL = $B2 ; unstable +OPC_LAX_izy = $B3 +OPC_LAX_zpy = $B7 +OPC_LAS_aby = $BB +OPC_LAX_aby = $BF + +; OPC_NOP_imm = $C2 ; doublet +OPC_DCP_izx = $C3 +OPC_DCP_zp = $C7 +OPC_AXS_imm = $CB +OPC_DCP_abs = $CF + +; OPC_KIL = $D2 ; unstable +OPC_DCP_izy = $D3 +OPC_NOP_zpx = $D4 +OPC_DCP_zpx = $D7 +OPC_NOP_DA = $DA +OPC_DCP_aby = $DB +OPC_NOP_abx = $DC +OPC_DCP_abx = $DF + +; OPC_NOP_imm = $E2 ; doublet +OPC_ISC_izx = $E3 +OPC_ISC_zp = $E7 +; OPC_SBC_imm = $EB ; doublet +OPC_ISC_abs = $EF + +; OPC_KIL = $F2 ; unstable +OPC_ISC_izy = $F3 +OPC_NOP_zpx = $F4 +OPC_ISC_zpx = $F7 +OPC_NOP_FA = $FA +OPC_ISC_aby = $FB +OPC_NOP_abx = $FC +OPC_ISC_abx = $FF + +.if (.cpu .bitand ::CPU_ISET_6502DTV) + +OPC_BRA = $12 +OPC_SAC_imm = $32 +OPC_SIR_imm = $42 + +.endif + +.endif diff --git a/cc65/asminc/pce.inc b/cc65/asminc/pce.inc new file mode 100644 index 0000000..8d141e8 --- /dev/null +++ b/cc65/asminc/pce.inc @@ -0,0 +1,93 @@ +; +; PCE definitions. By Groepaz/Hitmen. +; + +; FIXME: Screen dimensions can change according to the selected video mode. +screenrows = (224/8) +charsperline = 61 + +CH_HLINE = 1 +CH_VLINE = 2 + +; HuC6270 -- Video Display Controller (VDC) + +VDC_MAWR = 0 ; Memory Address Write Register +VDC_MARR = 1 ; Memory Address Read Register +VDC_VWR = 2 ; VRAM Write Register +VDC_VRR = 2 ; VRAM Read Register +VDC_UNK03 = 3 ; (unknown) +VDC_UNK04 = 4 ; (unknown) +VDC_CR = 5 ; Control Register +VDC_RCR = 6 ; Raster Counter Register +VDC_BXR = 7 ; Background X-Scroll Register +VDC_BYR = 8 ; Background Y-Scroll Register +VDC_MWR = 9 ; Memory-access Width Register +VDC_HSR = 10 ; Horizontal Sync Register +VDC_HDR = 11 ; Horizontal Display Register +VDC_VSR = 12 ; Vertical sync Register +VDC_VDR = 13 ; Vertical Display register +VDC_VCR = 14 ; Vertical display END position register +VDC_DCR = 15 ; (DMA) Control Register +VDC_SOUR = 16 ; (DMA) Source Register +VDC_DESR = 17 ; (DMA) Destination Register +VDC_LENR = 18 ; (DMA) Length Register +VDC_SATB = 19 ; Sprite Attribute Table + +; VDC port +; Note: The zero-page addressing mode is redirected to page $20. +; We avoid it by using mirror locations that are outside of the zero page. + +VDC_CTRL := $0200 +VDC_DATA_LO := $0202 +VDC_DATA_HI := $0203 + +; HuC6260 -- Video Color Encoder (VCE) + +; The DAC has a palette of 512 colours. +; The bitmap of that data is 0000000gggrrrbbb (Green, Red, Blue). +; You can read and write the DAC registers. + +VCE := $0400 ; base + +VCE_CTRL := $0400 ; write $00 to reset +VCE_ADDR_LO := $0402 ; LSB of byte offset into palette +VCE_ADDR_HI := $0403 ; MSB of byte offset into palette +VCE_DATA_LO := $0404 ; LSB of 16-bit palette data +VCE_DATA_HI := $0405 ; MSB of 16-bit palette data + +; Programmable Sound Generator (PSG) + +PSG := $0800 ; base + +PSG_CHAN_SELECT := $0800 +PSG_GLOBAL_PAN := $0801 +PSG_FREQ_LO := $0802 +PSG_FREQ_HI := $0803 +PSG_CHAN_CTRL := $0804 +PSG_CHAN_PAN := $0805 +PSG_CHAN_DATA := $0806 +PSG_NOISE := $0807 +PSG_LFO_FREQ := $0808 +PSG_LFO_CTRL := $0809 + +; Timer + +TIMER := $0C00 ; base + +TIMER_COUNT := $0C00 +TIMER_CTRL := $0C01 + +JOY_CTRL := $1000 + +IRQ_MASK := $1402 +IRQ_STATUS := $1403 + +CDR_MEM_DISABLE := $1803 +CDR_MEM_ENABLE := $1807 + +; Write to a VDC register. +.macro VREG arg1, arg2 + st0 #arg1 + st1 #<(arg2) + st2 #>(arg2) +.endmacro diff --git a/cc65/asminc/pet.inc b/cc65/asminc/pet.inc new file mode 100644 index 0000000..c510102 --- /dev/null +++ b/cc65/asminc/pet.inc @@ -0,0 +1,100 @@ +; +; PET generic definitions. +; + + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +VARTAB := $2A ; Pointer to start of BASIC variables +MEMSIZE := $34 ; Size of memory installed +TXTPTR := $77 ; Pointer into BASIC source code +TIME := $8D ; 60HZ clock +STATUS := $96 ; IEC status byte +KEY_COUNT := $9E ; Number of keys in input buffer +RVS := $9F ; Reverse flag +CURS_FLAG := $A7 ; 1 = cursor off +CURS_BLINK := $A8 ; Blink counter +CURS_CHAR := $A9 ; Character under the cursor +CURS_STATE := $AA ; Cursor blink state +SCREEN_PTR := $C4 ; Pointer to current char in text screen +CURS_X := $C6 ; Cursor column +FNLEN := $D1 ; Length of filename +LFN := $D2 ; Current Logical File Number +SECADR := $D3 ; Secondary address +DEVNUM := $D4 ; Device number +SCR_LINELEN := $D5 ; Screen line length +CURS_Y := $D8 ; Cursor row +FNADR := $DA ; Pointer to file name + +; 80-Column CBMs +KBDREPEAT80 := $E4 +KBDRPTRATE80 := $E5 +KBDRPTDELAY80 := $E6 + +BASIC_BUF := $200 ; Location of command-line +BASIC_BUF_LEN = 81 ; Maximum length of command-line + +KEY_BUF := $26F ; Keyboard buffer + +; 40-Column PETs/CBMs +KBDRPTDELAY40 := $3E9 +KBDRPTRATE40 := $3EA +KBDREPEAT40 := $3EE +KBDREPEAT40B := $3F8 + +;---------------------------------------------------------------------------- +; PET ROM type detection + +PET_DETECT := $FFFB +PET_2000 = $CA +PET_3000 = $FC +PET_4000 = $FD + +;---------------------------------------------------------------------------- +; Vector and other locations + +IRQVec := $0090 +BRKVec := $0092 +NMIVec := $0094 + +; --------------------------------------------------------------------------- +; I/O: 6520 PIA1 + +PIA1 := $E810 ; PIA1 base address +PIA1_PORTA := PIA1+$0 ; Port A (PA) and data direction register A (DDRA) +PIA1_PACTL := PIA1+$1 ; Port A control register (CRA) +PIA1_PORTB := PIA1+$2 ; Port B (PB) and data direction register B (DDRB) +PIA1_PBCTL := PIA1+$3 ; Port B control register (CRB) + +; --------------------------------------------------------------------------- +; I/O: 6520 PIA2 + +PIA2 := $E820 ; PIA2 base address +PIA2_PORTA := PIA2+$0 ; Port A (PA) and data direction register A (DDRA) +PIA2_PACTL := PIA2+$1 ; Port A control register (CRA) +PIA2_PORTB := PIA2+$2 ; Port B (PB) and data direction register B (DDRB) +PIA2_PBCTL := PIA2+$3 ; Port B control register (CRB) + +; --------------------------------------------------------------------------- +; I/O: 6522 VIA + +VIA := $E840 ; VIA base address +VIA_PB := VIA+$0 ; Port register B +VIA_PA1 := VIA+$1 ; Port register A +VIA_PRB := VIA+$0 ; *** Deprecated *** +VIA_PRA := VIA+$1 ; *** Deprecated *** +VIA_DDRB := VIA+$2 ; Data direction register B +VIA_DDRA := VIA+$3 ; Data direction register A +VIA_T1CL := VIA+$4 ; Timer 1, low byte +VIA_T1CH := VIA+$5 ; Timer 1, high byte +VIA_T1LL := VIA+$6 ; Timer 1 latch, low byte +VIA_T1LH := VIA+$7 ; Timer 1 latch, high byte +VIA_T2CL := VIA+$8 ; Timer 2, low byte +VIA_T2CH := VIA+$9 ; Timer 2, high byte +VIA_SR := VIA+$A ; Shift register +VIA_CR := VIA+$B ; Auxiliary control register +VIA_PCR := VIA+$C ; Peripheral control register +VIA_IFR := VIA+$D ; Interrupt flag register +VIA_IER := VIA+$E ; Interrupt enable register +VIA_PA2 := VIA+$F ; Port register A w/o handshake diff --git a/cc65/asminc/plus4.inc b/cc65/asminc/plus4.inc new file mode 100644 index 0000000..6c6017a --- /dev/null +++ b/cc65/asminc/plus4.inc @@ -0,0 +1,86 @@ +; +; Plus/4 generic definitions. +; + + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +TMPPTR := $22 ; Temporary ptr used by BASIC +VARTAB := $2D ; Pointer to start of BASIC variables +MEMSIZE := $37 ; Pointer to highest BASIC RAM location (+1) +TXTPTR := $3B ; Pointer into BASIC source code +STATUS := $90 ; Kernal I/O completion status +TIME := $A3 ; 60HZ clock +FNAM_LEN := $AB ; Length of filename +LFN := $AC ; Logical file number +SECADR := $AD ; Secondary address +DEVNUM := $AE ; Device number +FNAM := $AF ; Pointer to filename for OPEN +KEY_COUNT := $EF ; Number of keys in input buffer +RVS := $C2 ; Reverse flag +CURS_X := $CA ; Cursor column +CURS_Y := $CD ; Cursor row +SCREEN_PTR := $C8 ; Pointer to current char in text screen +CRAM_PTR := $EA ; Pointer to current char in color RAM + +BASIC_BUF := $200 ; Location of command-line +BASIC_BUF_LEN = 89 ; Maximum length of command-line + +FNBUF := $25E ; Buffer for filename +FETCH := $494 ; lda (zp),y from RAM +CHARCOLOR := $53B +FKEY_COUNT := $55D ; Characters for function key +FKEY_SPACE := $55F ; Function key definitions +FKEY_ORIG := $F3D2 ; Original definitions + +KBDREPEAT := $540 +KBDREPEATRATE := $541 +KBDREPEATDELAY := $542 + +; --------------------------------------------------------------------------- +; Vector and other locations + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 + +; --------------------------------------------------------------------------- +; Screen size + +XSIZE = 40 +YSIZE = 25 + +; --------------------------------------------------------------------------- +; I/O + +TED_T1LO := $FF00 +TED_T1HI := $FF01 +TED_T2LO := $FF02 +TED_T2HI := $FF03 +TED_T3LO := $FF04 +TED_T4HI := $FF05 +TED_MULTI1 := $FF07 +TED_KBD := $FF08 +TED_CURSHI := $FF0C +TED_CURSLO := $FF0D +TED_V1FRQLO := $FF0E +TED_V2FRQLO := $FF0F +TED_V2FRQHI := $FF10 +TED_CLK := $FF13 +TED_BGCOLOR := $FF15 +TED_COLOR1 := $FF16 +TED_COLOR2 := $FF17 +TED_COLOR3 := $FF18 +TED_BORDERCOLOR := $FF19 +TED_VLINEHI := $FF1C +TED_VLINELO := $FF1D +TED_HPOS := $FF1E +TED_ROMSEL := $FF3E +TED_RAMSEL := $FF3F + +; --------------------------------------------------------------------------- +; RAM/ROM selection addresses + +ENABLE_ROM := TED_ROMSEL +ENABLE_RAM := TED_RAMSEL diff --git a/cc65/asminc/rp6502.inc b/cc65/asminc/rp6502.inc new file mode 100644 index 0000000..1d850ec --- /dev/null +++ b/cc65/asminc/rp6502.inc @@ -0,0 +1,94 @@ +; Picocomputer 6502 general defines + +; RIA UART +RIA_READY := $FFE0 ; TX=$80 RX=$40 +RIA_TX := $FFE1 +RIA_RX := $FFE2 + +; VSYNC from PIX VGA +RIA_VSYNC := $FFE3 + +; RIA XRAM portal 0 +RIA_RW0 := $FFE4 +RIA_STEP0 := $FFE5 +RIA_ADDR0 := $FFE6 + +; RIA XRAM portal 1 +RIA_RW1 := $FFE8 +RIA_STEP1 := $FFE9 +RIA_ADDR1 := $FFEA + +; RIA OS fastcall +RIA_XSTACK := $FFEC +RIA_ERRNO := $FFED +RIA_OP := $FFEF +RIA_IRQ := $FFF0 +RIA_SPIN := $FFF1 +RIA_BUSY := $FFF2 ; Bit $80 +RIA_A := $FFF4 +RIA_X := $FFF6 +RIA_SREG := $FFF8 + +; RIA OS operation numbers +RIA_OP_EXIT := $FF +RIA_OP_ZXSTACK := $00 +RIA_OP_XREG := $01 +RIA_OP_PHI2 := $02 +RIA_OP_CODE_PAGE := $03 +RIA_OP_LRAND := $04 +RIA_OP_STDIN_OPT := $05 +RIA_OP_ERRNO_OPT := $06 +RIA_OP_CLOCK := $0F +RIA_OP_CLOCK_GETRES := $10 +RIA_OP_CLOCK_GETTIME := $11 +RIA_OP_CLOCK_SETTIME := $12 +RIA_OP_CLOCK_GETTIMEZONE := $13 +RIA_OP_OPEN := $14 +RIA_OP_CLOSE := $15 +RIA_OP_READ_XSTACK := $16 +RIA_OP_READ_XRAM := $17 +RIA_OP_WRITE_XSTACK := $18 +RIA_OP_WRITE_XRAM := $19 +RIA_OP_LSEEK := $1A +RIA_OP_LSEEK_CC65 := $1A +RIA_OP_UNLINK := $1B +RIA_OP_RENAME := $1C +RIA_OP_LSEEK_LLVM := $1D +RIA_OP_SYNCFS := $1E +RIA_OP_STAT := $1F +RIA_OP_OPENDIR := $20 +RIA_OP_READDIR := $21 +RIA_OP_CLOSEDIR := $22 +RIA_OP_TELLDIR := $23 +RIA_OP_SEEKDIR := $24 +RIA_OP_REWINDDIR := $25 +RIA_OP_CHMOD := $26 +RIA_OP_UTIME := $27 +RIA_OP_MKDIR := $28 +RIA_OP_CHDIR := $29 +RIA_OP_CHDRIVE := $2A +RIA_OP_GETCWD := $2B +RIA_OP_SETLABEL := $2C +RIA_OP_GETLABEL := $2D +RIA_OP_GETFREE := $2E + +; 6522 VIA +VIA := $FFD0 ; VIA base address +VIA_PB := VIA+$0 ; Port register B +VIA_PA1 := VIA+$1 ; Port register A +VIA_PRB := VIA+$0 ; *** Deprecated *** +VIA_PRA := VIA+$1 ; *** Deprecated *** +VIA_DDRB := VIA+$2 ; Data direction register B +VIA_DDRA := VIA+$3 ; Data direction register A +VIA_T1CL := VIA+$4 ; Timer 1, low byte +VIA_T1CH := VIA+$5 ; Timer 1, high byte +VIA_T1LL := VIA+$6 ; Timer 1 latch, low byte +VIA_T1LH := VIA+$7 ; Timer 1 latch, high byte +VIA_T2CL := VIA+$8 ; Timer 2, low byte +VIA_T2CH := VIA+$9 ; Timer 2, high byte +VIA_SR := VIA+$A ; Shift register +VIA_CR := VIA+$B ; Auxiliary control register +VIA_PCR := VIA+$C ; Peripheral control register +VIA_IFR := VIA+$D ; Interrupt flag register +VIA_IER := VIA+$E ; Interrupt enable register +VIA_PA2 := VIA+$F ; Port register A w/o handshake diff --git a/cc65/asminc/ser-error.inc b/cc65/asminc/ser-error.inc new file mode 100644 index 0000000..ff4e2b4 --- /dev/null +++ b/cc65/asminc/ser-error.inc @@ -0,0 +1,55 @@ +;**************************************************************************** +;* * +;* ser-error.inc * +;* * +;* Serial communication API * +;* * +;* * +;* * +;* (C) 2003-2012, Ullrich von Bassewitz * +;* Roemerstrasse 52 * +;* D-70794 Filderstadt * +;* EMail: uz@cc65.org * +;* * +;* * +;*This software is provided 'as-is', without any expressed or implied * +;*warranty. In no event will the authors be held liable for any damages * +;*arising from the use of this software. * +;* * +;*Permission is granted to anyone to use this software for any purpose, * +;*including commercial applications, and to alter it and redistribute it * +;*freely, subject to the following restrictions: * +;* * +;*1. The origin of this software must not be misrepresented; you must not * +;* claim that you wrote the original software. If you use this software * +;* in a product, an acknowledgment in the product documentation would be * +;* appreciated but is not required. * +;*2. Altered source versions must be plainly marked as such, and must not * +;* be misrepresented as being the original software. * +;*3. This notice may not be removed or altered from any source * +;* distribution. * +;* * +;**************************************************************************** + + + +;------------------------------------------------------------------------------ +; Error codes + +.enum + SER_ERR_OK ; Not an error - relax + SER_ERR_NO_DRIVER ; No driver available + SER_ERR_CANNOT_LOAD ; Error loading driver + SER_ERR_INV_DRIVER ; Invalid driver + SER_ERR_NO_DEVICE ; Device (hardware) not found + SER_ERR_BAUD_UNAVAIL ; Baud rate not available + SER_ERR_NO_DATA ; Nothing to read + SER_ERR_OVERFLOW ; No room in send buffer + SER_ERR_INIT_FAILED ; Initialization failed + SER_ERR_INV_IOCTL ; IOCTL not supported + SER_ERR_INSTALLED ; A driver is already installed + SER_ERR_NOT_OPEN ; Driver not open + + SER_ERR_COUNT ; Special: Number of error codes +.endenum + diff --git a/cc65/asminc/ser-kernel.inc b/cc65/asminc/ser-kernel.inc new file mode 100644 index 0000000..79ace64 --- /dev/null +++ b/cc65/asminc/ser-kernel.inc @@ -0,0 +1,162 @@ +;**************************************************************************** +;* * +;* ser-kernel.inc * +;* * +;* Serial communication API * +;* * +;* * +;* * +;*(C) 2003-2006, Ullrich von Bassewitz * +;* Roemerstrasse 52 * +;* D-70794 Filderstadt * +;*EMail: uz@cc65.org * +;* * +;* * +;*This software is provided 'as-is', without any expressed or implied * +;*warranty. In no event will the authors be held liable for any damages * +;*arising from the use of this software. * +;* * +;*Permission is granted to anyone to use this software for any purpose, * +;*including commercial applications, and to alter it and redistribute it * +;*freely, subject to the following restrictions: * +;* * +;*1. The origin of this software must not be misrepresented; you must not * +;* claim that you wrote the original software. If you use this software * +;* in a product, an acknowledgment in the product documentation would be * +;* appreciated but is not required. * +;*2. Altered source versions must be plainly marked as such, and must not * +;* be misrepresented as being the original software. * +;*3. This notice may not be removed or altered from any source * +;* distribution. * +;* * +;**************************************************************************** + + + +;------------------------------------------------------------------------------ +; The driver header + +.struct SER_HDR + ID .byte 3 ; Contains 0x73, 0x65, 0x72 ("ser") + VERSION .byte 1 ; Interface version + LIBREF .addr ; Library reference + JUMPTAB .struct + SER_INSTALL .addr ; SER_INSTALL routine + SER_UNINSTALL .addr ; SER_UNINSTALL routine + SER_OPEN .addr ; SER_OPEN routine + SER_CLOSE .addr ; SER_CLOSE routine + SER_GET .addr ; SER_GET routine + SER_PUT .addr ; SER_PUT routine + SER_STATUS .addr ; SER_STATUS routine + SER_IOCTL .addr ; SER_IOCTL routine + SER_IRQ .addr ; SER_IRQ routine + .endstruct +.endstruct + + +;------------------------------------------------------------------------------ +; The SER API version, stored SER_HDR::VERSION + +SER_API_VERSION = $02 + +;------------------------------------------------------------------------------ +; ser_params + +.struct SER_PARAMS + BAUDRATE .byte ; Baudrate + DATABITS .byte ; Number of data bits + STOPBITS .byte ; Number of stop bits + PARITY .byte ; Parity setting + HANDSHAKE .byte ; Type of handshake to use +.endstruct + +;------------------------------------------------------------------------------ +; Serial parameters + +; Baudrate +SER_BAUD_45_5 = $00 +SER_BAUD_50 = $01 +SER_BAUD_75 = $02 +SER_BAUD_110 = $03 +SER_BAUD_134_5 = $04 +SER_BAUD_150 = $05 +SER_BAUD_300 = $06 +SER_BAUD_600 = $07 +SER_BAUD_1200 = $08 +SER_BAUD_1800 = $09 +SER_BAUD_2400 = $0A +SER_BAUD_3600 = $0B +SER_BAUD_4800 = $0C +SER_BAUD_7200 = $0D +SER_BAUD_9600 = $0E +SER_BAUD_19200 = $0F +SER_BAUD_38400 = $10 +SER_BAUD_57600 = $11 +SER_BAUD_115200 = $12 +SER_BAUD_230400 = $13 +SER_BAUD_31250 = $14 +SER_BAUD_62500 = $15 +SER_BAUD_56_875 = $16 + +; Data bit settings +SER_BITS_5 = $00 +SER_BITS_6 = $01 +SER_BITS_7 = $02 +SER_BITS_8 = $03 + +; Stop bit settings +SER_STOP_1 = $00 +SER_STOP_2 = $01 + +; Parity +SER_PAR_NONE = $00 +SER_PAR_ODD = $01 +SER_PAR_EVEN = $02 +SER_PAR_MARK = $03 +SER_PAR_SPACE = $04 + +; Handshake +SER_HS_NONE = $00 ; No handshake +SER_HS_HW = $01 ; Hardware (RTS/CTS) handshake +SER_HS_SW = $02 ; Software handshake + +; Bit masks to mask out things from the status returned by ser_status +SER_STATUS_PE = $01 ; Parity error +SER_STATUS_FE = $02 ; Framing error +SER_STATUS_OE = $04 ; Overrun error +SER_STATUS_DCD = $20 ; NOT data carrier detect +SER_STATUS_DSR = $40 ; NOT data set ready + +;------------------------------------------------------------------------------ +; Variables + + .global _ser_drv ; Pointer to driver + +;------------------------------------------------------------------------------ +; Driver entry points + + .global ser_install + .global ser_uninstall + .global ser_open + .global ser_close + .global ser_get + .global ser_put + .global ser_status + .global ser_ioctl + .global ser_irq + +;------------------------------------------------------------------------------ +; C callable functions + + .global _ser_load_driver + .global _ser_unload + .global _ser_install + .global _ser_uninstall + .global _ser_open + .global _ser_close + .global _ser_get + .global _ser_put + .global _ser_status + .global _ser_ioctl + + .global _ser_clear_ptr diff --git a/cc65/asminc/signal.inc b/cc65/asminc/signal.inc new file mode 100644 index 0000000..597cad4 --- /dev/null +++ b/cc65/asminc/signal.inc @@ -0,0 +1,57 @@ +;/*****************************************************************************/ +;/* */ +;/* signal.inc */ +;/* */ +;/* Signal handling definitions */ +;/* */ +;/* */ +;/* */ +;/* (C) 2002 Ullrich von Bassewitz */ +;/* Wacholderweg 14 */ +;/* D-70597 Stuttgart */ +;/* EMail: uz@musoftware.de */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + +; Standard signal handling functions +SIG_ERR = $0000 + +; Signal numbers +SIGABRT = 0 +SIGFPE = 1 +SIGILL = 2 +SIGINT = 3 +SIGSEGV = 4 +SIGTERM = 5 +SIGCOUNT = 6 ; Number of signals + +; Table with signal handlers (asm code only) +.global sigtable + +; Function declarations +.global ___sig_ign +.global ___sig_dfl +.global _signal +.global _raise + + diff --git a/cc65/asminc/sim65.inc b/cc65/asminc/sim65.inc new file mode 100644 index 0000000..b8ea264 --- /dev/null +++ b/cc65/asminc/sim65.inc @@ -0,0 +1,75 @@ + +; ******************************************************************************* +; ** ** +; ** sim65.inc : assembler definitions for the sim6502 and sim65c02 targets. ** +; ** ** +; ** Sidney Cadot, January 2025 ** +; ** ** +; ******************************************************************************* + + ; The '_peripherals' symbol is defined in the linker configuration + ; file to correspond to the first address in the periperal memory + ; aparture. + ; + ; We use it here as a base address for all peripheral addresses. + + .import _peripherals + +; ************************************************************** +; ** ** +; ** Define assembler symbols for the "counter" peripheral. ** +; ** ** +; ************************************************************** + +peripheral_counter_base := _peripherals + 0 + +peripheral_counter_latch := peripheral_counter_base + 0 +peripheral_counter_select := peripheral_counter_base + 1 +peripheral_counter_value := peripheral_counter_base + 2 + +; Values for the peripheral_counter_select register. + +COUNTER_SELECT_CLOCKCYCLE_COUNTER = $00 +COUNTER_SELECT_INSTRUCTION_COUNTER = $01 +COUNTER_SELECT_IRQ_COUNTER = $02 +COUNTER_SELECT_NMI_COUNTER = $03 +COUNTER_SELECT_WALLCLOCK_TIME = $80 +COUNTER_SELECT_WALLCLOCK_TIME_SPLIT = $81 + +; ******************************************************************** +; ** ** +; ** Define assembler symbols for the "sim65 control" peripheral. ** +; ** ** +; ******************************************************************** + +peripheral_sim65_base := _peripherals + 10 + +peripheral_sim65_cpu_mode := peripheral_sim65_base + 0 +peripheral_sim65_trace_mode := peripheral_sim65_base + 1 + +; Values for the peripheral_sim65_cpu_mode register. + +SIM65_CPU_MODE_6502 = $00 +SIM65_CPU_MODE_65C02 = $01 +SIM65_CPU_MODE_6502X = $02 + +; Bitfield values for the peripheral_sim65_trace_mode field. + +SIM65_TRACE_MODE_FIELD_INSTR_COUNTER = $40 +SIM65_TRACE_MODE_FIELD_CLOCK_COUNTER = $20 +SIM65_TRACE_MODE_FIELD_PC = $10 +SIM65_TRACE_MODE_FIELD_INSTR_BYTES = $08 +SIM65_TRACE_MODE_FIELD_INSTR_ASSEMBLY = $04 +SIM65_TRACE_MODE_FIELD_CPU_REGISTERS = $02 +SIM65_TRACE_MODE_FIELD_CC65_SP = $01 + +; Values for the peripheral_sim65_trace_mode field that fully disable / enable tracing. + +SIM65_TRACE_MODE_DISABLE = $00 +SIM65_TRACE_MODE_ENABLE_FULL = $7F + +; ************************ +; ** ** +; ** End of sim65.inc ** +; ** ** +; ************************ diff --git a/cc65/asminc/smc.inc b/cc65/asminc/smc.inc new file mode 100644 index 0000000..137c2d4 --- /dev/null +++ b/cc65/asminc/smc.inc @@ -0,0 +1,267 @@ +; smc.mac +; ca65 Macro-Pack for Self Modifying Code (SMC) +; +; (c) Christian Krüger, latest change: 17-Jul-2016 +; +; This software is provided 'as-is', without any expressed or implied +; warranty. In no event will the authors be held liable for any damages +; arising from the use of this software. +; +; Permission is granted to anyone to use this software for any purpose, +; including commercial applications, and to alter it and redistribute it +; freely, subject to the following restrictions: +; +; 1. The origin of this software must not be misrepresented; you must not +; claim that you wrote the original software. If you use this software +; in a product, an acknowledgment in the product documentation would be +; appreciated but is not required. +; 2. Altered source versions must be plainly marked as such, and must not +; be misrepresented as being the original software. +; 3. This notice may not be removed or altered from any source +; distribution. +; + +.define _SMCDesignator .mid(0, .tcount(label) - 1, label) .ident(.concat(.string(.right(1, label)), "_SMC")) +.define _SMCAlias .mid(0, .tcount(alias) - 1, alias) .ident(.concat(.string(.right(1, alias)), "_SMC")) +.define SMC_AbsAdr $FADE +.define SMC_ZpAdr $00 +.define SMC_Opcode nop +.define SMC_Value $42 + +.macro SMC_OperateOnValue opcode, label + opcode _SMCDesignator+1 +.endmacro + +.macro SMC_OperateOnLowByte opcode, label + SMC_OperateOnValue opcode, label +.endmacro + +.macro SMC_OperateOnHighByte opcode, label + opcode _SMCDesignator + 2 +.endmacro + +.macro SMC_Import alias +.import _SMCAlias +.endmacro + +.macro SMC_Export alias, label +.export _SMCAlias := _SMCDesignator +.endmacro + +.macro SMC label, statement +_SMCDesignator: statement +.endmacro + +.macro SMC_TransferOpcode label, opcode, register +.if .paramcount = 2 .or .match ({register}, a) .or .match ({register}, ) + lda #opcode + sta _SMCDesignator +.elseif .match ({register}, x) + ldx #opcode + stx _SMCDesignator +.elseif .match ({register}, y) + ldy #opcode + sty _SMCDesignator +.else + .error "Invalid usage of macro 'SMC_TransferOpcode'" +.endif +.endmacro + +.macro SMC_LoadOpcode label, register +.if .paramcount = 1 .or .match ({register}, a) .or .match ({register}, ) + lda _SMCDesignator +.elseif .match ({register}, x) + ldx _SMCDesignator +.elseif .match ({register}, y) + ldy _SMCDesignator +.else + .error "Invalid usage of macro 'SMC_LoadOpcode'" +.endif +.endmacro + +.macro SMC_StoreOpcode label, register +.if .paramcount = 1 .or .match ({register}, a) .or .match ({register}, ) + sta _SMCDesignator +.elseif .match ({register}, x) + stx _SMCDesignator +.elseif .match ({register}, y) + sty _SMCDesignator +.else + .error "Invalid usage of macro 'SMC_StoreOpcode'" +.endif +.endmacro + +.macro SMC_ChangeBranch label, destination, register +.if .paramcount = 2 .or .match ({register}, a) .or .match ({register}, ) + lda #(<(destination - _SMCDesignator -2)) + sta _SMCDesignator+1 +.elseif .match ({register}, x) + ldx #(<(destination - _SMCDesignator - 2)) + stx _SMCDesignator+1 +.elseif .match ({register}, y) + ldy #(<(destination - _SMCDesignator - 2)) + sty _SMCDesignator+1 +.else + .error "Invalid usage of macro 'SMC_ChangeBranch'" +.endif +.endmacro + +.macro SMC_TransferValue label, value, register +.if .paramcount = 2 .or .match ({register}, a) .or .match ({register}, ) + lda value + sta _SMCDesignator+1 +.elseif .match ({register}, x) + ldx value + stx _SMCDesignator+1 +.elseif .match ({register}, y) + ldy value + sty _SMCDesignator+1 +.else + .error "Invalid usage of macro 'SMC_TransferValue'" +.endif +.endmacro + +.macro SMC_LoadValue label, register +.if .paramcount = 1 .or .match ({register}, a) .or .match ({register}, ) + lda _SMCDesignator+1 +.elseif .match ({register}, x) + ldx _SMCDesignator+1 +.elseif .match ({register}, y) + ldy _SMCDesignator+1 +.else + .error "Invalid usage of macro 'SMC_LoadValue'" +.endif +.endmacro + +.macro SMC_StoreValue label, register +.if .paramcount = 1 .or .match ({register}, a) .or .match ({register}, ) + sta _SMCDesignator+1 +.elseif .match ({register}, x) + stx _SMCDesignator+1 +.elseif .match ({register}, y) + sty _SMCDesignator+1 +.else + .error "Invalid usage of macro 'SMC_StoreValue'" +.endif +.endmacro + + +.macro SMC_TransferLowByte label, value, register +SMC_TransferValue label, value, register +.endmacro + +.macro SMC_LoadLowByte label, register +SMC_LoadValue label, register +.endmacro + +.macro SMC_StoreLowByte label, register +SMC_StoreValue label, register +.endmacro + +.macro SMC_TransferHighByte label, value, register +.if .paramcount = 2 .or .match ({register}, a) .or .match ({register}, ) + lda value + sta _SMCDesignator+2 +.elseif .match ({register}, x) + ldx value + stx _SMCDesignator+2 +.elseif .match ({register}, y) + ldy value + sty _SMCDesignator+2 +.else + .error "Invalid usage of macro 'SMC_TransferHighByte'" +.endif +.endmacro + +.macro SMC_LoadHighByte label, register +.if .paramcount = 1 .or .match ({register}, a) .or .match ({register}, ) + lda _SMCDesignator+2 +.elseif .match ({register}, x) + ldx _SMCDesignator+2 +.elseif .match ({register}, y) + ldy _SMCDesignator+2 +.else + .error "Invalid usage of macro 'SMC_LoadHighByte'" +.endif +.endmacro + +.macro SMC_StoreHighByte label, register +.if .paramcount = 1 .or .match ({register}, a) .or .match ({register}, ) + sta _SMCDesignator+2 +.elseif .match ({register}, x) + stx _SMCDesignator+2 +.elseif .match ({register}, y) + sty _SMCDesignator+2 +.else + .error "Invalid usage of macro 'SMC_StoreHighByte'" +.endif +.endmacro + +.macro SMC_TransferAddressSingle label, address, register +.if .paramcount = 2 .or .match ((register), a) .or .match ({register}, ) + .if (.match (.left (1, {address}), #)) + ; immediate mode + lda #<(.right (.tcount ({address})-1, {address})) + sta _SMCDesignator+1 + lda #>(.right (.tcount ({address})-1, {address})) + sta _SMCDesignator+2 + .else + ; assume absolute or zero page + lda address + sta _SMCDesignator+1 + lda 1+(address) + sta _SMCDesignator+2 + .endif +.elseif .match ((register), x) + .if (.match (.left (1, {address}), #)) + ; immediate mode + ldx #<(.right (.tcount ({address})-1, {address})) + stx _SMCDesignator+1 + ldx #>(.right (.tcount ({address})-1, {address})) + stx _SMCDesignator+2 + .else + ; assume absolute or zero page + ldx address + stx _SMCDesignator+1 + ldx 1+(address) + stx _SMCDesignator+2 + .endif +.elseif .match ((register), y) + .if (.match (.left (1, {address}), #)) + ; immediate mode + ldy #<(.right (.tcount ({address})-1, {address})) + sty _SMCDesignator+1 + ldy #>(.right (.tcount ({address})-1, {address})) + sty _SMCDesignator+2 + .else + ; assume absolute or zero page + ldy address + sty _SMCDesignator+1 + ldy 1+(address) + sty _SMCDesignator+2 + .endif +.else + .error "Invalid usage of macro 'SMC_TransferAddressSingle'" +.endif +.endmacro + +.macro SMC_TransferAddress label, address +.if (.match (.left (1, {address}), #)) + ; immediate mode + lda #<(.right (.tcount ({address})-1, {address})) + sta _SMCDesignator+1 + ldx #>(.right (.tcount ({address})-1, {address})) + stx _SMCDesignator+2 +.else + ; assume absolute or zero page + lda {address} + sta _SMCDesignator+1 + ldx 1+{address} + stx _SMCDesignator)+2 +.endif +.endmacro + +.macro SMC_StoreAddress label + sta _SMCDesignator+1 + stx _SMCDesignator+2 +.endmacro diff --git a/cc65/asminc/stat.inc b/cc65/asminc/stat.inc new file mode 100644 index 0000000..e5248f0 --- /dev/null +++ b/cc65/asminc/stat.inc @@ -0,0 +1,64 @@ +;**************************************************************************** +;* * +;* stat.inc * +;* * +;* Stat struct * +;* * +;* * +;* * +;*(C) 2023 Colin Leroy-Mira * +;* * +;* * +;*This software is provided 'as-is', without any expressed or implied * +;*warranty. In no event will the authors be held liable for any damages * +;*arising from the use of this software. * +;* * +;*Permission is granted to anyone to use this software for any purpose, * +;*including commercial applications, and to alter it and redistribute it * +;*freely, subject to the following restrictions: * +;* * +;*1. The origin of this software must not be misrepresented; you must not * +;* claim that you wrote the original software. If you use this software * +;* in a product, an acknowledgment in the product documentation would be * +;* appreciated but is not required. * +;*2. Altered source versions must be plainly marked as such, and must not * +;* be misrepresented as being the original software. * +;*3. This notice may not be removed or altered from any source * +;* distribution. * +;* * +;**************************************************************************** + + .include "time.inc" + +;------------------------------------------------------------------------------ +; st_mode values + +S_IFDIR = $01 +S_IFREG = $02 + +;------------------------------------------------------------------------------ +; struct stat + +.struct stat + st_dev .dword + st_ino .dword + st_mode .byte + st_nlink .dword + st_uid .byte + st_gid .byte + st_size .dword + st_atim .tag timespec + st_ctim .tag timespec + st_mtim .tag timespec + .ifdef __APPLE2__ + st_access .byte + st_type .byte + st_auxtype .word + st_storagetype .byte + st_blocks .word + st_mod_date .word + st_mod_time .word + st_create_date .word + st_create_time .word + .endif +.endstruct diff --git a/cc65/asminc/statvfs.inc b/cc65/asminc/statvfs.inc new file mode 100644 index 0000000..8674b04 --- /dev/null +++ b/cc65/asminc/statvfs.inc @@ -0,0 +1,46 @@ +;**************************************************************************** +;* * +;* statvfs.inc * +;* * +;* Statvfs struct * +;* * +;* * +;* * +;*(C) 2023 Colin Leroy-Mira * +;* * +;* * +;*This software is provided 'as-is', without any expressed or implied * +;*warranty. In no event will the authors be held liable for any damages * +;*arising from the use of this software. * +;* * +;*Permission is granted to anyone to use this software for any purpose, * +;*including commercial applications, and to alter it and redistribute it * +;*freely, subject to the following restrictions: * +;* * +;*1. The origin of this software must not be misrepresented; you must not * +;* claim that you wrote the original software. If you use this software * +;* in a product, an acknowledgment in the product documentation would be * +;* appreciated but is not required. * +;*2. Altered source versions must be plainly marked as such, and must not * +;* be misrepresented as being the original software. * +;*3. This notice may not be removed or altered from any source * +;* distribution. * +;* * +;**************************************************************************** + +;------------------------------------------------------------------------------ +; struct statvfs + +.struct statvfs + f_bsize .dword + f_frsize .dword + f_blocks .dword + f_bfree .dword + f_bavail .dword + f_files .dword + f_ffree .dword + f_favail .dword + f_fsid .dword + f_flag .dword + f_namemax .dword +.endstruct diff --git a/cc65/asminc/stdio.inc b/cc65/asminc/stdio.inc new file mode 100644 index 0000000..426389d --- /dev/null +++ b/cc65/asminc/stdio.inc @@ -0,0 +1,74 @@ +;*****************************************************************************/ +;* */ +;* stdio.inc */ +;* */ +;* Mirror definitions for stdio.h */ +;* */ +;* */ +;* */ +;* (C) 2003-2005, Ullrich von Bassewitz */ +;* Roemerstrasse 52 */ +;* D-70794 Filderstadt */ +;* EMail: uz@cc65.org */ +;* */ +;* */ +;* This software is provided 'as-is', without any expressed or implied */ +;* warranty. In no event will the authors be held liable for any damages */ +;* arising from the use of this software. */ +;* */ +;* Permission is granted to anyone to use this software for any purpose, */ +;* including commercial applications, and to alter it and redistribute it */ +;* freely, subject to the following restrictions: */ +;* */ +;* 1. The origin of this software must not be misrepresented; you must not */ +;* claim that you wrote the original software. If you use this software */ +;* in a product, an acknowledgment in the product documentation would be */ +;* appreciated but is not required. */ +;* 2. Altered source versions must be plainly marked as such, and must not */ +;* be misrepresented as being the original software. */ +;* 3. This notice may not be removed or altered from any source */ +;* distribution. */ +;* */ +;*****************************************************************************/ + + + +;---------------------------------------------------------------------------- +; Constants + +_IOFBF = 0 +_IOLBF = 1 +_IONBF = 2 +BUFSIZ = 256 +EOF = -1 +.if .defined(__APPLE2__) +FILENAME_MAX = 64+1 +.elseif .defined(__ATARI__) +FILENAME_MAX = 63+1 +.elseif .defined(__CBM__) +FILENAME_MAX = 255 +.elseif .defined(__LUNIX__) +FILENAME_MAX = 80+1 +.elseif .defined(__TELESTRAT__) +FILENAME_MAX = 50+1 +.else +FILENAME_MAX = 16+1 +.endif +L_tmpnam = FILENAME_MAX +SEEK_CUR = 0 +SEEK_END = 1 +SEEK_SET = 2 +TMP_MAX = 256 + +; Maximum number of open files (size of the file table) +FOPEN_MAX = 8 + +;---------------------------------------------------------------------------- +; External variables + + .global _stdin + .global _stdout + .global _stderr + + + diff --git a/cc65/asminc/supervision.inc b/cc65/asminc/supervision.inc new file mode 100644 index 0000000..a1cc212 --- /dev/null +++ b/cc65/asminc/supervision.inc @@ -0,0 +1,75 @@ +; supervision symbols + +; supervision 65c02s +; in cc65 up to 2.9.1 65c02 means 65sc02 + +lcd_addr = $4000 +LCD_LINESIZE = $30 +LCD_WIDTH = 160 +LCD_HEIGHT = 160 +; 2 bit per pixel, packed + +lcd_width = $2000 +lcd_height = $2001 +lcd_xpos = $2002 ; in pixel, bit 0+1 not used +lcd_ypos = $2003 ; weird + +sv_port_r = $2021 +sv_port_w = $2022 + +sv_timer_count = $2023 +; read for quitting +sv_timer_quit = $2024 + +; bit 0 timer, bit 1 dma +sv_irq_source = $2027 +SV_IRQ_REQUEST_TIMER = 1 +SV_IRQ_REQUEST_DMA = 2 + +; bit 5,6,7 select bank at 0x8000 +sv_bank = $2026 +SV_NMI_ENABLE_ON = 1 +SV_IRQ_ENABLE_TIMER = 2 +SV_IRQ_ENABLE_DMA = 4 +SV_LCD_ON = 8 +SV_TIMER_MODE_240Hz = $10 ; else 15360 + + +; low activ/pressed +sv_control = $2020 +SV_RIGHT = 1 +SV_LEFT = 2 +SV_DOWN = 4 +SV_UP = 8 +SV_BUTTONB = $10 +SV_BUTTONA = $20 +SV_SELECT = $40 +SV_START = $80 + +; frequency=125000/counter +sv_audio_right_counter = $2010 ;word +sv_audio_left_counter = $2014 +SV_AUDIO_ON =$40 +;bits 0..3 volume +; bit 4 ? +; bit 5 ? +sv_audio_right_control = $2012 +sv_audio_left_control = $2016 +; write activates tone for x/60 sec (0 means 256) +sv_audio_right_timer = $2013 +sv_audio_left_timer = $2017 + + +;read for irq quitting +sv_dma_quit = $2025 +sv_dma_on = $201c +; bit 7 true start, false stop +sv_dma_start = $2018 ; word +sv_dma_size = $201a ; *32 samples +sv_dma_control = $201b +; bit 0,1 speed: 0 15360, 11 15360/4 +; bit 2,3 volume: 0 silent, 11 loud + +sv_noise_volume = $2028 ; and frequency +sv_noise_timer = $2029 +sv_noise_control = $202a diff --git a/cc65/asminc/sym1.inc b/cc65/asminc/sym1.inc new file mode 100644 index 0000000..b6a6f17 --- /dev/null +++ b/cc65/asminc/sym1.inc @@ -0,0 +1,186 @@ +; --------------------------------------------------------------------------- +; +; SYM-1 definitions +; +; --------------------------------------------------------------------------- + + +RAMSTART := $0200 ; Entry point + + +; --------------------------------------------------------------------------- +; Monitor Functions +; --------------------------------------------------------------------------- +WARM := $8003 ; Monitor entry +SVNMI := $809B ; Save NMI entry +INBYTE := $81D9 ; Get two HEX characters and pack +ASCNIB := $8275 ; Test for carriage-return +INCCMP := $82B2 ; Increment pointer +CHKSAD := $82DD ; Compute checksum +OUTPC := $82EE ; Display program counter +OUTBYT := $82FA ; Print byte as two ASCII characters +OUTS2 := $8319 ; Print pointer +INSTAT := $8386 ; Determine if key is pressed +GETKEY := $88AF ; Get key (disregarding monitor login) +SCAND := $8906 ; Flash LED display (once) +KEYQ := $8923 ; Test for keypress +BEEP := $8972 ; Make a beep +CONFIG := $89A5 ; Configure I/O +OUTDSP := $89C1 ; Output to on-board LED display +INCHR := $8A1B ; Input character and convert to uppercase +OUTCHR := $8A47 ; Output character +INTCHR := $8A58 ; Input character without case conversion +DLYF := $8AE6 ; Delay 1 bit time +DLYH := $8AE9 ; Delay 1/2 bit time +RESET := $8B4A ; Hard reset +ACCESS := $8B86 ; Unlock lowest 4K memory +NACCES := $8B9C ; Lock lowest 4K memory +L8C78 := $8C78 ; Link to tape +DUMPT := $8E87 ; Dump memory to tape +LOADT := $8C78 ; Load memory from tape +TAPEMODE := $00FD ; Top bit on for high-speed + + +; --------------------------------------------------------------------------- +; System Memory +; --------------------------------------------------------------------------- +DISBUF := $A640 ; On-Board Display Buffer +DISBUF0 := $A640 ; Left-Most digit +DISBUF1 := $A641 ; Second digit +DISBUF2 := $A642 ; Third +DISBUF3 := $A643 ; Fourth +DISBUF4 := $A644 ; Fifth +DISBUF5 := $A645 ; Sixth and right-most digit +DISBUF6 := $A646 ; Not-used / right of display (shift buffer) +RDIG := $A645 ; Right-most digit (same as DISBUF5) +P3L := $A64A ; Parameter 3 (low-byte) +P3H := $A64B ; (high-byte) +P2L := $A64C ; Parameter 2 +P2H := $A64D ; +P1L := $A64E ; Parameter 1 +P1H := $A64F +PARNR := $A649 ; Number of Parameters Entered +PADBIT := $A650 ; Pad Bits for Carriage Return +SDBYT := $A651 ; Baud Rate for RS232 (01-4800,06-2400,10-1200,24-600,4C-300,D5-110) +ERCNT := $A652 ; Error Count (Max FF) +TECHO := $A653 ; Terminal Echo (bit-7=ECHO/NO, 6=CTL-O TOGGLE) +TOUTFL := $A654 ; Output Flags (bit-7=CRT IN, 6=TTY IN, 5=TTY OUT, 4=CRT OUT) +KSHFL := $A655 ; Keyboard Shift Flag +TV := $A656 ; Trace Velocity (0=Single Step) +LSTCOM := $A657 ; Last Monitor Command +MAXRC := $A658 ; Maximum Record Length for Memory Dump + + +; --------------------------------------------------------------------------- +; Register Followers +; --------------------------------------------------------------------------- +PCLR := $A659 ; Program Counter (low-byte) +PCHR := $A65A ; (high-byte) +SR := $A65B ; Stack Pointer +FR := $A65C ; Status Register Flags +AR := $A65D ; A Register +XR := $A65E ; X Register +YR := $A65F ; Y Register + + +; --------------------------------------------------------------------------- +; I/O Vectors (3 bytes each) +; --------------------------------------------------------------------------- +INVEC := $A660 ; Input Character +OUTVEC := $A663 ; Output Character +INSVEC := $A666 ; Input Status +URSVEC := $A669 ; Unrecognized Syntax +URCVEC := $A66C ; Unrecognized Command / Error +SCNVEC := $A66F ; Scan On-board Display + + +; --------------------------------------------------------------------------- +; Trace and Interrupt Vectors (2 bytes each) +; --------------------------------------------------------------------------- +EXEVEC := $A672 ; Exec and Alternate InVec +TRCVEC := $A674 ; Trace +UBRKVC := $A676 ; User Break after Monitor +UIRQVC := $A678 ; User non-break IRQ after Monitor +NMIVEC := $A67A ; Non-Maskable Interrupt +RSTVEC := $A67C ; Reset +IRQVEC := $A67E ; Interrupt Request + + +; --------------------------------------------------------------------------- +; I/O Registers +; --------------------------------------------------------------------------- +; +; 6532 (U27) +; +PADA := $A400 ; Keyboard / Display +P3DA := $A402 ; Serial I/O +DDPADA := $A401 ; Data-Direction Register for PADA +DDP3DA := $A403 ; Data-Direction Register for P3DA +WEDRTA := $A404 ; Write-Edge Detect Read Timer A +WEDRFA := $A405 ; Write-Edge Detect Read-Int Flags A +WEDRTB := $A406 ; Write-Edge Detect Read Timer B +WEDRFB := $A407 ; Write-Edge Detect Read-Int Flags B +TIM0001 := $A41C ; Timer / 1 +TIM0008 := $A41D ; Timer / 8 +TIM0064 := $A41E ; Timer / 64 +TIM1024 := $A41F ; Timer / 1024 +; +; 6522 (U25) +; +OR1A := $A001 ; Input / Output Register for 1A +DDR1A := $A003 ; Data-Direction Register for 1A +OR1B := $A000 ; Input / Output Register for 1B +DDR1B := $A002 ; Data-Direction Register for 1B +TIC1L := $A004 ; +TIC1H := $A005 ; +TIL1L := $A006 ; +TIL1H := $A007 ; +T2L1L := $A008 ; +T2C1L := $A008 ; +T2C1H := $A009 ; +SR1 := $A00A ; +ACR1 := $A00B ; +PCR1 := $A00C ; +IFR1 := $A00D ; +IER1 := $A00E ; +DR1A := $A00F ; +; +; 6522 (U28) +; +OR2A := $A801 ; Input / Output Register for 2A +DDR2A := $A803 ; Data-Direction Register for 2A +OR2B := $A800 ; Input / Output Register for 2B +DDR2B := $A802 ; Data-Direction Register for 2B +TIC2L := $A804 ; +TIC2H := $A805 ; +TIL2L := $A806 ; +TIL2H := $A807 ; +T2L2L := $A808 ; +T2C2L := $A808 ; +T2C2H := $A809 ; +SR2 := $A80A ; +ACR2 := $A80B ; +PCR2 := $A80C ; +IFR2 := $A80D ; +IER2 := $A80E ; +DR2A := $A80F ; +; +; 6522 (U29) +; +OR3A := $AC01 ; Write-Protect RAM, Debug On/Off, I/O-3A +DDR3A := $AC03 ; Data-Direction Register for 3A +OR3B := $AC00 ; Input / Output Register for 3B +DDR3B := $AC02 ; Data-Direction Register for 3B +TIC3L := $AC04 ; +TIC3H := $AC05 ; +TIL3L := $AC06 ; +TIL3H := $AC07 ; +T2L3L := $AC08 ; +T2C3L := $AC08 ; +T2C3H := $AC09 ; +SR3 := $AC0A ; +ACR3 := $AC0B ; +PCR3 := $AC0C ; +IFR3 := $AC0D ; +IER3 := $AC0E ; +DR3A := $AC0F ; diff --git a/cc65/asminc/telestrat.inc b/cc65/asminc/telestrat.inc new file mode 100644 index 0000000..bbfabdf --- /dev/null +++ b/cc65/asminc/telestrat.inc @@ -0,0 +1,546 @@ +; +; Oric TELEMON definition +; TELEMON 2.4 & Orix +; For Orix check http://orix.oric.org +; + +; --------------------------------------------------------------------------- +; Constants + +SCREEN_XSIZE = 40 ; Screen columns +SCREEN_YSIZE = 28 ; Screen rows + +FUNCTKEY = $A5 + +FNAME_LEN = 11 ; Maximum length of file-name + +; --------------------------------------------------------------------------- +; I/O Identifier +; Theses identifers are used for channel management +; + +XKBD = $80 ; Keyboard +XRSE = $83 ; RS232 in +XSCR = $88 ; Screen +XRSS = $90 ; RS232 out + +; --------------------------------------------------------------------------- +; Zero page + +; --------------------------------------------------------------------------- +; Page 00 +RES := $00 +RESB := $02 + +DECDEB := $04 +DECFIN := $06 +DECCIB := $08 +DECTRV := $0A + +TR0 := $0C +TR1 := $0D +TR2 := $0E +TR3 := $0F +TR4 := $10 +TR5 := $11 +TR6 := $12 +TR7 := $13 + +DEFAFF := $14 + +IRQSVA := $21 ; Used to save A when a BRK call occurs +IRQSVX := $22 ; Used to save X when a BRK call occurs +IRQSVY := $23 ; Used to save Y when a BRK call occurs +IRQSVP := $24 ; Used to save P when a BRK call occurs + +ADSCR := $26 +SCRNB := $28 ; Id of the current window + +ADKBD := $2A ; Address ASCII conversion table + + +PTR_READ_DEST := $2C ; Used for XFREAD and XWRITE only in Orix + +ADCLK := $40 ; Address for clock display +TIMEUS := $42 +TIMEUD := $44 ; Counter clock (1/10 of a second) + + +HRSX := $46 +HRSY := $47 + +XLPRBI := $48 ; Printer flag (b7) + +HRSX40 := $49 +HRSX6 := $4A + +ADHRS := $4B ; Hires screen address (word) + +HRS1 := $4D +HRS2 := $4F +HRS3 := $51 +HRS4 := $53 +HRS5 := $55 + +HRSFB := $57 + +VABKP1 := $58 + +; RS232T +; b0-b3 : speed +; 1111 => 19200 bps (please note that telestrat can't handle this speed without stopping all IRQ except ACIA's one) +; 1100 => 9600 bps (default from TELEMON) +; 1110 => 4800 bps +; 1010 => 2400 bps +; 1000 => 1200 bps +; 0111 => 600 bps +; 0110 => 300 bps +; 0101 => 150 bps +; 0010 => 75 bps + +; b4 : 0 external clock, 1 internal clock +; b6-b5 : 00 8 bits +; 01 7 bits +; 10 6 bits +; 11 5 bits +; b7 : 0 a stop + +RS232T := $59 + +; RS232C +; b0-b3 : 0 +; b4 : 1 if echo +; b5 : 1 if parity +; b7-b6 : 00 in/out parity odd +; : 01 on/out parity even +; : 10 parity sent, answer not tested +; : 11 SPACE SENT, reception not tested + +RS232C := $5A +INDRS := $5B + +; Float and integer management +ACC1E := $60 +ACC1M := $61 +ACC1S := $65 +ACC1EX := $66 +ACC1J := $67 +ACC2E := $68 +ACC2M := $69 +ACC2S := $6D +ACCPS := $6E +ACC3 := $6F + +ACC4E := $73 +ACC4M := $74 + + +FLDT0 := $74 +FLDT1 := $75 +FLDT2 := $76 +FLSVY := $77 +FLTR0 := $7D +FLTR1 := $7E + +; Menu management +MENDDY := $62 +MENDFY := $63 +MENX := $64 +MENDY := $66 +FLGMEN := $68 +ADMEN := $69 + +FLSGN := $8A +FLINT := $88 +FLSVS := $89 +FLERR := $8B + +VARLNG := $8C +VARAPL := $D0 + +; --------------------------------------------------------------------------- +; Low memory +IRQVec := $02FB ; "fast" interrupt vector + +; --------------------------------------------------------------------------- +; I/O locations + +; 6522 +.struct VIA ; Versatile Interface Adapter + .res $0300 +PRB .byte ; Port Register B +PRA .byte ; Port Register A +DDRB .byte ; Data Direction Register B +DDRA .byte ; Data Direction Register A +T1 .word ; Timer 1 +T1L .word ; Timer 1 Latch +T2 .word ; Timer 2 +SR .byte ; Shift Register +ACR .byte ; Auxiliary Control Register +PCR .byte ; Peripheral Control Register +IFR .byte ; Interrupt Flags Register +IER .byte ; Interrupt Enable Register +PRA2 .byte ; Port Register A without handshaking +.endstruct + + +.struct VIA2 ; Versatile Interface Adapter + .res $0320 +PRB .byte ; Port Register B +PRA .byte ; Port Register A +DDRB .byte ; Data Direction Register B +DDRA .byte ; Data Direction Register A +T1 .word ; Timer 1 +T1L .word ; Timer 1 Latch +T2 .word ; Timer 2 +SR .byte ; Shift Register +ACR .byte ; Auxiliary Control Register +PCR .byte ; Peripheral Control Register +IFR .byte ; Interrupt Flags Register +IER .byte ; Interrupt Enable Register +PRA2 .byte ; Port Register A without handshaking +.endstruct + +; 6551 +.struct ACIA ; Asynchronous Communications Interface Adapter + .res $031C +DATA .byte +STATUS .byte +CMD .byte ; Command register +CTRL .byte ; Control register +.endstruct + +SCREEN := $BB80 + + +; --------------------------------------------------------------------------- +; ROM entries + +; TELEMON primitives (2.4 & 3.x) + +; all values are used to call bank 7 of telestrat cardridge. It works with 'brk value' +XOP0 = $00 ; Open device on channel 0 +XOP1 = $01 ; Open device on channel 1 +XOP2 = $02 ; Open device on channel 2 +XOP3 = $03 ; Open device on channel 3 + +XCL0 = $04 ; Close channel 0 +XCL1 = $05 ; Close channel 1 +XCL2 = $06 ; Close channel 2 +XCL3 = $07 ; Close channel 3 + +XRD0 = $08 +XRDW0 = $0C + +XWR0 = $10 ; Write a char in channel 0 +XWR1 = $11 ; Write a char in channel 1 +XWR2 = $12 ; Write a char in channel 2 +XWR3 = $13 ; Write a char in channel 3 + +XWSTR0 = $14 ; Write a string in text mode channel 0 +XWSTR1 = $15 ; Write a string in text mode channel 1 +XWSTR2 = $16 ; Write a string in text mode channel 2 +XWSTR3 = $17 ; Write a string in text mode channel 3 + +XDECAL = $18 + +XTEXT = $19 +XHIRES = $1A +XEFFHI = $1B ; Clear hires screen +XFILLM = $1C +XMINMA = $1F +XVARS = $24 ; Only in Orix, in TELEMON 2.4, it's XNOMFI ($24) +XCRLF = $25 ; Jump a line and return to the beginning of the line +XDECAY = $26 +XFREAD = $27 ; Only in Orix +XBINDX = $28 ; Convert a number into hex and displays on channel 0 +XDECIM = $29 +XHEXA = $2A ; Convert a number into hex + +XMAINARGS = $2C ; Only available for Orix + +XEDT = $2D ; Launch editor +XINSER = $2E +XGETARGV = $2E ; Only available for Orix + +XSCELG = $2F ; Search a line in editor mode +XOPEN = $30 ; Only in Orix +XECRPR = $33 ; Displays prompt +XCOSCR = $34 ; Switch off cursor +XCSSCR = $35 ; Switch on cursor +XSCRSE = $36 +XSCROH = $37 ; Scroll up text screen +XSCROB = $38 ; Scroll down text screen +XSCRNE = $39 ; Load charset from rom to ram +XCLOSE = $3A ; Only in Orix close file +XFWRITE = $3B ; Only in Orix write file + +; Clock primitive +XRECLK = $3C ; Reset clock +XCLCL = $3D ; Close clock +XWRCLK = $3E ; Displays clock in the address in A & Y registers + +XFSEEK = $3F ; Only in Orix + +; Sound primitives +XSONPS = $40 ; Send data to PSG register (14 values) +XOUPS = $42 ; Send Oups sound into PSG +XPLAY = $43 ; Play a sound +XSOUND = $44 +XMUSIC = $45 +XZAP = $46 ; Send Zap sound to PSG +XSHOOT = $47 + +; Path Management +XGETCWD = $48 ; Get current CWD +XPUTCWD = $49 ; Chdir + +; File management +XMKDIR = $4B ; Create a folder. Only available in Orix + +XHCHRS = $4C ; Hard copy hires + +; File management +XRM = $4D ; Remove a folder or a file. Only available in Orix + +XFWR = $4E ; Put a char on the first screen. Only available in Orix + +; Keyboard primitives +XALLKB = $50 ; Read Keyboard, and populate KBDCOL +XKBDAS = $51 ; Ascii conversion +XGOKBD = $52 ; Swap keyboard type (Qwerty, French ...) + +; Buffer management +XECRBU = $54 ; Write A or AY in the buffer +XLISBU = $55 ; Read A or AY in the buffer +XTSTBU = $56 +XVIDBU = $57 ; Flush the buffer +XINIBU = $58 ; Initialize the buffer X +XDEFBU = $59 ; Reset all value of the buffer +XBUSY = $5A ; Test if the buffer is empty + +XMALLOC = $5B ; Only in Orix + +; RS232 primitives +XSDUMP = $5C ; RS232 input dump +XCONSO = $5D ; Swap screen into RS232 terminal +XSLOAD = $5E ; Read a file from RS232 +XSSAVE = $5F ; Write a file to RS232 + +; Minitel primitives +XMLOAD = $60 ; Read a file from Minitel +XMSAVE = $61 ; Write a file to Minitel + +XFREE = $62 ; Only in Orix + +XEXEC = $63 ; Only in Orix + +; Next Minitel primitives +XWCXFI = $63 ; Wait connection +XLIGNE = $64 ; +XDECON = $65 ; Minitel disconnection +XMOUT = $66 ; Send a byte to minitel (from A) + +XSOUT = $67 ; Send accumulator value (A) to RS232, available in TELEMON 2.4 : if RS232 buffer is full, the Oric Telestrat freezes + +XHRSSE = $8C ; Set hires position cursor +XDRAWA = $8D ; Draw a line absolute +XDRAWR = $8E ; Draw a line (relative) +XCIRCL = $8F ; Draw a circle +XCURSE = $90 ; Plot a pixel +XCURMO = $91 ; Move to x,y pos in Hires +XPAPER = $92 +XINK = $93 +XBOX = $94 ; Draw a box +XABOX = $95 +XFILL = $96 +XCHAR = $97 ; Display a char on the screen in Hires +XSCHAR = $98 ; Draw a string in hires +XEXPLO = $9C ; Send Explode sound to PSG +XPING = $9D ; Send Ping sound to PSG + +; --------------------------------------------------------------------------- +; ROM entries variables + +PWD_PTR = $00 + +; --------------------------------------------------------------------------- +; +BUFTRV := $100 + + +; --------------------------------------------------------------------------- +; Page $200 +BNKST := $200 ; Used to store signature of 8 bank (length : 8 bytes) +TABDRV := $208 + +DRVDEF := $20C +FLGTEL := $20D +KOROM := $20E ; Used to compute the size of all rom bank. The result is store here. The value is in KB +KORAM := $20F ; Used to compute the size of all ram bank. The result is store here. The value is in KB +; Time management +TIMED := $210 ; Clock (1/10 of seconds) +TIMES := $211 +TIMEM := $212 +TIMEH := $213 +FLGCLK := $214 +FLGCLK_FLAG := $215 +FLGCUR := $216 ; Cursor management flag +; screens position managements + +FLGCUR_STATE := $217 ; Cursor state flag + +ADSCRL := $218 +ADSCRH := $21C +SCRX := $220 +SCRY := $224 + +SCRDX := $228 +SCRFX := $22C +SCRDY := $230 +SCRFY := $234 +SCRBAL := $238 +SCRBAH := $23C +SCRCT := $240 +SCRCF := $244 +FLGSCR := $248 +CURSCR := $24C + +HARD_COPY_HIRES := $250 ; Hard copy vector + +SCRTXT := $256 +SCRHIR := $25C +SCRTRA := $262 ; 6 bytes lenfth + +; Keyboard management +KBDCOL := $268 ; 8 bytes length +KBDFLG_KEY := $270 ; 0 if no key pressed +KBDVRR := $272 + +KBDVRL := $273 +FLGKBD := $275 +KBDFCT := $276 +KBDSHT := $278 + +KBDKEY := $279 +KBDCTC := $27E +LPRX := $286 +LPRY := $287 +LPRFX := $288 +LPRFY := $289 +FLGLPR := $28A + +; Joysticks management +FLGJCK := $28C +JCGVAL := $28D +JCDVAL := $28E +JCKTAB := $29D + + +HRSPAT := $2AA ; Hires pattern : it's used to draw pattern for a line or a circle +HRSERR := $2AB + +IOTAB0 := $2AE +IOTAB1 := $2B2 +IOTAB2 := $2B6 +IOTAB3 := $2BA +ADIOB := $2BE ; 48 bytes length +FLGRST := $2EE +CSRND := $2EF +VNMI := $2F4 +ADIODB_VECTOR := $2f7 ; 3 bytes length + +IRQVECTOR := $2FA +VAPLIC := $2FD + +; --------------------------------------------------------------------------- +; Page $400 +EXBNK := $40C +VEXBNK := $414 +BNKCIB := $417 + +; --------------------------------------------------------------------------- +; Page $500 + +DRIVE := $500 +ERRNB := $512 +SAVES := $513 +BUFNOM := $517 +VSALO0 := $528 +VSALO1 := $529 +FTYPE := $52C ; File type +DESALO := $52D +FISALO := $52F +EXSALO := $531 +EXTDEF := $55D ; Default extension. At the start of telemon, it's set to ".COM" +BUFEDT := $590 ; Buffer edition + +MAX_BUFEDT_LENGTH=110 + +; --------------------------------------------------------------------------- +; Hardware +CH376_DATA := $340 +CH376_COMMAND := $341 + +; RAM overlays buffer +BUFBUF := $c080 + +; --------------------------------------------------------------------------- +; Stratsed vectors +; Stratsed is the main OS for Telestrat +XMERGE := $FF0E +XFST := $FF11 +XSPUT := $FF14 +XSTAKE := $FF17 +XTAKE := $FF20 +XOPENS := $FF1A ; XOPEN from Stratsed +XCLOSES := $FF1D ; XCLOSE from Stratsed +XPUT := $FF23 +XREWIN := $FF29 +XJUMP := $FF2C +XLGBUF := $FF2F +XERVEC := $FF32 +XESAVE := $FF35 +XCOPY := $FF38 +XDNAME := $FF3B +XSTATU := $FF3E +XUPDAT := $FF41 +XFORMA := $FF44 +XDELBK := $FF4A +XDELN := $FF4D +XPROT := $FF50 +XUNPRO := $FF53 +XDIRN := $FF56 +XBKP := $FF59 +XINITI := $FF5C +XERREU := $FF5F +XLOAD := $FF62 +XDEFSA := $FF65 +XDEFLO := $FF68 +XSAVE := $FF6B +XNOMDE := $FF6E +XCREAY := $FF71 +XDETSE := $FF74 +XLIBSE := $FF77 +XTRVCA := $FF7A +XTRVNM := $FF7D +XTRVNX := $FF80 +XBUCA := $FF86 +XVBUF1 := $FF89 +XSVSEC := $FF8C +XSAY := $FF8F +XSBUF1 := $FF92 +XSBUF2 := $FF95 +XSBUF3 := $FF98 +XSCAT := $FF9B +XPRSEC := $FFA1 +XPBUF1 := $FFA4 +XPMAP := $FFA7 +XRWTS := $FFAA + +; --------------------------------------------------------------------------- +; MACRO + +.macro BRK_TELEMON value + .byte $00,value +.endmacro diff --git a/cc65/asminc/tgi-error.inc b/cc65/asminc/tgi-error.inc new file mode 100644 index 0000000..a4559bb --- /dev/null +++ b/cc65/asminc/tgi-error.inc @@ -0,0 +1,52 @@ +;*****************************************************************************/ +;* */ +;* tgi-error.inc */ +;* */ +;* TGI error codes */ +;* */ +;* */ +;* */ +;* (C) 2002-2012, Ullrich von Bassewitz */ +;* Roemerstrasse 52 */ +;* D-70794 Filderstadt */ +;* EMail: uz@cc65.org */ +;* */ +;* */ +;* This software is provided 'as-is', without any expressed or implied */ +;* warranty. In no event will the authors be held liable for any damages */ +;* arising from the use of this software. */ +;* */ +;* Permission is granted to anyone to use this software for any purpose, */ +;* including commercial applications, and to alter it and redistribute it */ +;* freely, subject to the following restrictions: */ +;* */ +;* 1. The origin of this software must not be misrepresented; you must not */ +;* claim that you wrote the original software. If you use this software */ +;* in a product, an acknowledgment in the product documentation would be */ +;* appreciated but is not required. */ +;* 2. Altered source versions must be plainly marked as such, and must not */ +;* be misrepresented as being the original software. */ +;* 3. This notice may not be removed or altered from any source */ +;* distribution. */ +;* */ +;*****************************************************************************/ + + + +; Error constants +.enum + TGI_ERR_OK ; No error + TGI_ERR_NO_DRIVER ; No driver available + TGI_ERR_CANNOT_LOAD ; Error loading driver or font + TGI_ERR_INV_DRIVER ; Invalid driver + TGI_ERR_INV_MODE ; Mode not supported by driver + TGI_ERR_INV_ARG ; Invalid function argument + TGI_ERR_INV_FUNC ; Function not supported + TGI_ERR_INV_FONT ; Font file is invalid + TGI_ERR_NO_RES ; Out of resources (memory, handles, ...) + TGI_ERR_UNKNOWN ; Unknown error + TGI_ERR_INSTALLED ; A driver is already installed + + TGI_ERR_COUNT ; Special: Number of error messages +.endenum + diff --git a/cc65/asminc/tgi-kernel.inc b/cc65/asminc/tgi-kernel.inc new file mode 100644 index 0000000..fba78af --- /dev/null +++ b/cc65/asminc/tgi-kernel.inc @@ -0,0 +1,233 @@ +;*****************************************************************************/ +;* */ +;* tgi-kernel.inc */ +;* */ +;* TGI kernel interface */ +;* */ +;* */ +;* */ +;* (C) 2002-2012, Ullrich von Bassewitz */ +;* Roemerstrasse 52 */ +;* D-70794 Filderstadt */ +;* EMail: uz@cc65.org */ +;* */ +;* */ +;* This software is provided 'as-is', without any expressed or implied */ +;* warranty. In no event will the authors be held liable for any damages */ +;* arising from the use of this software. */ +;* */ +;* Permission is granted to anyone to use this software for any purpose, */ +;* including commercial applications, and to alter it and redistribute it */ +;* freely, subject to the following restrictions: */ +;* */ +;* 1. The origin of this software must not be misrepresented; you must not */ +;* claim that you wrote the original software. If you use this software */ +;* in a product, an acknowledgment in the product documentation would be */ +;* appreciated but is not required. */ +;* 2. Altered source versions must be plainly marked as such, and must not */ +;* be misrepresented as being the original software. */ +;* 3. This notice may not be removed or altered from any source */ +;* distribution. */ +;* */ +;*****************************************************************************/ + + + +;------------------------------------------------------------------------------ +; The driver header + +.struct TGI_HDR + ID .byte 3 ; Contains 0x74, 0x67, 0x69 ("tgi") + VERSION .byte 1 ; Interface version + LIBREF .addr ; Library reference + VARS .struct + XRES .word 1 ; X resolution + YRES .word 1 ; Y resolution + COLORCOUNT .byte 1 ; Number of available colors + PAGECOUNT .byte 1 ; Number of screens available + FONTWIDTH .byte 1 ; System font width in pixel + FONTHEIGHT .byte 1 ; System font height in pixel + ASPECTRATIO .word 1 ; Fixed point 8.8 format + FLAGS .byte 1 ; TGI driver flags + .endstruct + JUMPTAB .struct + INSTALL .addr ; INSTALL routine + UNINSTALL .addr ; UNINSTALL routine + INIT .addr ; INIT routine + DONE .addr ; DONE routine + GETERROR .addr ; GETERROR routine + CONTROL .addr ; CONTROL routine + CLEAR .addr ; CLEAR routine + SETVIEWPAGE .addr ; SETVIEWPAGE routine + SETDRAWPAGE .addr ; SETDRAWPAGE routine + SETCOLOR .addr ; SETCOLOR routine + SETPALETTE .addr ; SETPALETTE routine + GETPALETTE .addr ; GETPALETTE routine + GETDEFPALETTE .addr ; GETDEFPALETTE routine + SETPIXEL .addr ; SETPIXEL routine + GETPIXEL .addr ; GETPIXEL routine + LINE .addr ; LINE routine + BAR .addr ; BAR routine + TEXTSTYLE .addr ; TEXTSTYLE routine + OUTTEXT .addr ; OUTTEXT routine + .endstruct +.endstruct + +;------------------------------------------------------------------------------ +; The TGI API version, stored at TGI_HDR_VERSION + +TGI_API_VERSION = $06 + +;------------------------------------------------------------------------------ +; Bitmapped tgi driver flags, stored in TGI_HDR::VARS::FLAGS. +; Beware: Some of the bits are tested using the BIT instruction, so do not +; change the values without checking the code! + +TGI_BM_FONT_FINESCALE = $80 ; Bitmap fonts are fine grained scalable + +;------------------------------------------------------------------------------ +; Text constants + +TGI_FONT_BITMAP = 0 +TGI_FONT_VECTOR = 1 + +TGI_TEXT_HORIZONTAL = 0 +TGI_TEXT_VERTICAL = 1 + +;---------------------------------------------------------------------------- +; Results of tgi_outcode + +TGI_CLIP_NONE = $00 +TGI_CLIP_LEFT = $01 +TGI_CLIP_RIGHT = $02 +TGI_CLIP_BOTTOM = $04 +TGI_CLIP_TOP = $08 + +;------------------------------------------------------------------------------ +; ASM accessible color constants + + .global tgi_color_black:zp ; Target-specific value for black + .global tgi_color_white:zp ; Target-specific value for white + +;------------------------------------------------------------------------------ +; C accessible variables + + .global _tgi_drv ; Pointer to driver + .global _tgi_error ; Last error code + .global _tgi_gmode ; Flag: graphics mode active + .global _tgi_curx ; Current drawing cursor X + .global _tgi_cury ; Current drawing cursor Y + .global _tgi_color ; Current drawing color + .global _tgi_font ; Which font to use + .global _tgi_textdir ; Current text direction + .global _tgi_vectorfont ; Pointer to vector font + .global _tgi_textscalew ; Text magnification for the width + .global _tgi_textscaleh ; Text magnification for the height + .global _tgi_charwidth ; Width of scaled system font char + .global _tgi_charheight ; Height of scaled system font char + .global _tgi_xres ; X resolution of the current mode + .global _tgi_yres ; Y resolution of the current mode + .global _tgi_xmax ; Maximum X coordinate + .global _tgi_ymax ; Maximum Y coordinate + .global _tgi_colorcount ; Number of available colors + .global _tgi_pagecount ; Number of available screen pages + .global _tgi_fontwidth ; System font width + .global _tgi_fontheight ; System font height + .global _tgi_aspectratio ; Aspect ratio, fixed point 8.8 + .global _tgi_flags ; TGI driver flags + +;------------------------------------------------------------------------------ +; ASM accessible variables + + .global tgi_clip_x1 ; Coordinate for line clipper + .global tgi_clip_y1 ; Coordinate for line clipper + .global tgi_clip_x2 ; Coordinate for line clipper + .global tgi_clip_y2 ; Coordinate for line clipper + +;------------------------------------------------------------------------------ +; Driver entry points + + .global tgi_install + .global tgi_uninstall + .global tgi_init + .global tgi_done + .global tgi_geterror + .global tgi_control + .global tgi_clear + .global tgi_setviewpage + .global tgi_setdrawpage + .global tgi_setcolor + .global tgi_setpalette + .global tgi_getpalette + .global tgi_getdefpalette + .global tgi_setpixel + .global tgi_getpixel + .global tgi_line + .global tgi_bar + .global tgi_textstyle + .global tgi_outtext + +;------------------------------------------------------------------------------ +; ASM functions + + .global tgi_clear_ptr + .global tgi_clippedline + .global tgi_curtoxy + .global tgi_getset + .global tgi_imulround + .global tgi_inv_arg + .global tgi_inv_drv + .global tgi_linepop + .global tgi_outcode + .global tgi_popxy + .global tgi_popxy2 + .global tgi_set_ptr + +;------------------------------------------------------------------------------ +; C callable functions + + .global _tgi_arc + .global _tgi_bar + .global _tgi_circle + .global _tgi_clear + .global _tgi_done + .global _tgi_ellipse + .global _tgi_getaspectratio + .global _tgi_getcolor + .global _tgi_getcolorcount + .global _tgi_getdefpalette + .global _tgi_geterror + .global _tgi_geterrormsg + .global _tgi_getmaxcolor + .global _tgi_getmaxx + .global _tgi_getmaxy + .global _tgi_getpagecount + .global _tgi_getpalette + .global _tgi_getpixel + .global _tgi_gettextheight + .global _tgi_gettextwidth + .global _tgi_getxres + .global _tgi_getyres + .global _tgi_gotoxy + .global _tgi_imulround + .global _tgi_init + .global _tgi_install + .global _tgi_install_vectorfont + .global _tgi_ioctl + .global _tgi_line + .global _tgi_lineto + .global _tgi_load_driver + .global _tgi_outtext + .global _tgi_outtextxy + .global _tgi_pieslice + .global _tgi_setaspectratio + .global _tgi_setcolor + .global _tgi_setdrawpage + .global _tgi_setpalette + .global _tgi_setpixel + .global _tgi_settextdir + .global _tgi_settextscale + .global _tgi_settextstyle + .global _tgi_setviewpage + .global _tgi_uninstall + .global _tgi_unload diff --git a/cc65/asminc/tgi-vectorfont.inc b/cc65/asminc/tgi-vectorfont.inc new file mode 100644 index 0000000..124fe93 --- /dev/null +++ b/cc65/asminc/tgi-vectorfont.inc @@ -0,0 +1,70 @@ +;*****************************************************************************/ +;* */ +;* tgi-vectorfont.inc */ +;* */ +;* TGI vector font definitions */ +;* */ +;* */ +;* */ +;* (C) 2009, Ullrich von Bassewitz */ +;* Roemerstrasse 52 */ +;* D-70794 Filderstadt */ +;* EMail: uz@cc65.org */ +;* */ +;* */ +;* This software is provided 'as-is', without any expressed or implied */ +;* warranty. In no event will the authors be held liable for any damages */ +;* arising from the use of this software. */ +;* */ +;* Permission is granted to anyone to use this software for any purpose, */ +;* including commercial applications, and to alter it and redistribute it */ +;* freely, subject to the following restrictions: */ +;* */ +;* 1. The origin of this software must not be misrepresented; you must not */ +;* claim that you wrote the original software. If you use this software */ +;* in a product, an acknowledgment in the product documentation would be */ +;* appreciated but is not required. */ +;* 2. Altered source versions must be plainly marked as such, and must not */ +;* be misrepresented as being the original software. */ +;* 3. This notice may not be removed or altered from any source */ +;* distribution. */ +;* */ +;*****************************************************************************/ + + + +;------------------------------------------------------------------------------ +; Vectorfont constants + +TGI_VF_VERSION = $00 ; File version number +TGI_VF_FIRSTCHAR = $20 ; First char in file +TGI_VF_LASTCHAR = $7E ; Last char in file +TGI_VF_CCOUNT = (TGI_VF_LASTCHAR - TGI_VF_FIRSTCHAR + 1) + +;------------------------------------------------------------------------------ +; TCH file header and font data structures + +; TCH file header +.struct TGI_VF_HDR + MAGIC .byte 3 ; "TCH" + VERSION .byte 1 ; Version number + SIZE .word 1 ; Font data size +.endstruct + +; Font data loaded directly from file +.struct TGI_VECTORFONT + TOP .byte ; Height of char + BOTTOM .byte ; Descender + HEIGHT .byte ; Maximum char height + WIDTHS .byte ::TGI_VF_CCOUNT ; Char widths + CHARS .word ::TGI_VF_CCOUNT ; Pointer to character defs + OPS .byte ; Actually dynamic +.endstruct + +;------------------------------------------------------------------------------ +; C callable functions + + .global _tgi_vectorchar + + + diff --git a/cc65/asminc/time.inc b/cc65/asminc/time.inc new file mode 100644 index 0000000..7c1ab31 --- /dev/null +++ b/cc65/asminc/time.inc @@ -0,0 +1,74 @@ +;/*****************************************************************************/ +;/* */ +;/* time.inc */ +;/* */ +;/* Date and time */ +;/* */ +;/* */ +;/* */ +;/* (C) 2009 Ullrich von Bassewitz */ +;/* Roemerstrasse 52 */ +;/* D-70794 Filderstadt */ +;/* EMail: uz@cc65.org */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + +;------------------------------------------------------------------------------ +; Struct tm - must match the struct defined in time.h + +.struct tm + tm_sec .word + tm_min .word + tm_hour .word + tm_mday .word + tm_mon .word + tm_year .word + tm_wday .word + tm_yday .word + tm_isdst .word +.endstruct + + +;------------------------------------------------------------------------------ +; Struct timespec - must match the struct defined in time.h + +.struct timespec + tv_sec .dword + tv_nsec .dword +.endstruct + + +;------------------------------------------------------------------------------ +; Exported functions + +.global _clock_getres +.global _clock_gettime +.global _clock_settime +.global _localtime +.global _mktime + + +;------------------------------------------------------------------------------ +; Constants + +CLOCK_REALTIME = 0 diff --git a/cc65/asminc/utsname.inc b/cc65/asminc/utsname.inc new file mode 100644 index 0000000..6d978dd --- /dev/null +++ b/cc65/asminc/utsname.inc @@ -0,0 +1,46 @@ +;/*****************************************************************************/ +;/* */ +;/* utsname.inc */ +;/* */ +;/* Return system information */ +;/* */ +;/* */ +;/* */ +;/* (C) 2003 Ullrich von Bassewitz */ +;/* Roemerstrasse 52 */ +;/* D-70794 Filderstadt */ +;/* EMail: uz@cc65.org */ +;/* */ +;/* */ +;/* This software is provided 'as-is', without any expressed or implied */ +;/* warranty. In no event will the authors be held liable for any damages */ +;/* arising from the use of this software. */ +;/* */ +;/* Permission is granted to anyone to use this software for any purpose, */ +;/* including commercial applications, and to alter it and redistribute it */ +;/* freely, subject to the following restrictions: */ +;/* */ +;/* 1. The origin of this software must not be misrepresented; you must not */ +;/* claim that you wrote the original software. If you use this software */ +;/* in a product, an acknowledgment in the product documentation would be */ +;/* appreciated but is not required. */ +;/* 2. Altered source versions must be plainly marked as such, and must not */ +;/* be misrepresented as being the original software. */ +;/* 3. This notice may not be removed or altered from any source */ +;/* distribution. */ +;/* */ +;/*****************************************************************************/ + + + +; Struct utsname +.struct utsname + sysname .byte 17 + nodename .byte 9 + release .byte 9 + version .byte 9 + machine .byte 25 +.endstruct + + + diff --git a/cc65/asminc/vic20.inc b/cc65/asminc/vic20.inc new file mode 100644 index 0000000..7184ab6 --- /dev/null +++ b/cc65/asminc/vic20.inc @@ -0,0 +1,119 @@ +; +; VIC-20 generic definitions. Stolen mostly from c64.inc -- Steve Schmidtke +; + +; --------------------------------------------------------------------------- +; Zero page, Commodore stuff + +VARTAB := $2D ; Pointer to start of BASIC variables +MEMSIZE := $37 ; Pointer to highest BASIC RAM location (+1) +TXTPTR := $7A ; Pointer into BASIC source code +STATUS := $90 ; Kernal I/O completion status +TIME := $A0 ; 60HZ clock +FNAM_LEN := $B7 ; Length of filename +SECADR := $B9 ; Secondary address +DEVNUM := $BA ; Device number +FNAM := $BB ; Pointer to filename +KEY_COUNT := $C6 ; Number of keys in input buffer +RVS := $C7 ; Reverse flag +CURS_FLAG := $CC ; 1 = cursor off +CURS_BLINK := $CD ; Blink counter +CURS_CHAR := $CE ; Character under the cursor +CURS_STATE := $CF ; Cursor blink state +SCREEN_PTR := $D1 ; Pointer to current char in text screen +CURS_X := $D3 ; Cursor column +CURS_Y := $D6 ; Cursor row +CRAM_PTR := $F3 ; Pointer to current char in color RAM + +BASIC_BUF := $200 ; Location of command-line +BASIC_BUF_LEN = 89 ; Maximum length of command-line + +CHARCOLOR := $286 +CURS_COLOR := $287 ; Color under the cursor + +KBDREPEAT := $28a +KBDREPEATRATE := $28b +KBDREPEATDELAY := $28c + +RSSTAT := $297 ; RS-232 device driver status + +; --------------------------------------------------------------------------- +; Screen size + +XSIZE = 22 +YSIZE = 23 + +; --------------------------------------------------------------------------- +; Vector and other locations + +IRQVec := $0314 +BRKVec := $0316 +NMIVec := $0318 + +; --------------------------------------------------------------------------- +; I/O: 6560 VIC + +VIC := $9000 +VIC_CR0 := VIC+$0 +VIC_CR1 := VIC+$1 +VIC_CR2 := VIC+$2 +VIC_CR3 := VIC+$3 +VIC_LINES := VIC+$3 ; Screen lines, bit 7 is bit 0 from VIC_HLINE +VIC_CR4 := VIC+$4 +VIC_HLINE := VIC+$4 ; Rasterline, bits 1-8 +VIC_CR5 := VIC+$5 +VIC_CR6 := VIC+$6 +VIC_CR7 := VIC+$7 +VIC_CR8 := VIC+$8 +VIC_CR9 := VIC+$9 +VIC_CRA := VIC+$A +VIC_CRB := VIC+$B +VIC_CRC := VIC+$C +VIC_CRD := VIC+$D +VIC_CRE := VIC+$E +VIC_CRF := VIC+$F +VIC_COLOR := VIC+$F ; Border and background color + +; --------------------------------------------------------------------------- +; I/O: 6522 VIA1 + +VIA1 := $9110 ; VIA1 base address +VIA1_JOY := VIA1+$0 ; *** Deprecated *** +VIA1_PB := VIA1+$0 ; Port register B +VIA1_PA1 := VIA1+$1 ; Port register A +VIA1_DDRB := VIA1+$2 ; Data direction register B +VIA1_DDRA := VIA1+$3 ; Data direction register A +VIA1_T1CL := VIA1+$4 ; Timer 1, low byte +VIA1_T1CH := VIA1+$5 ; Timer 1, high byte +VIA1_T1LL := VIA1+$6 ; Timer 1 latch, low byte +VIA1_T1LH := VIA1+$7 ; Timer 1 latch, high byte +VIA1_T2CL := VIA1+$8 ; Timer 2, low byte +VIA1_T2CH := VIA1+$9 ; Timer 2, high byte +VIA1_SR := VIA1+$A ; Shift register +VIA1_ACR := VIA1+$B ; Auxiliary control register +VIA1_PCR := VIA1+$C ; Peripheral control register +VIA1_IFR := VIA1+$D ; Interrupt flag register +VIA1_IER := VIA1+$E ; Interrupt enable register +VIA1_PA2 := VIA1+$F ; Port register A w/o handshake + +; --------------------------------------------------------------------------- +; I/O: 6522 VIA2 + +VIA2 := $9120 ; VIA2 base address +VIA2_JOY := VIA2+$0 ; *** Deprecated *** +VIA2_PB := VIA2+$0 ; Port register B +VIA2_PA1 := VIA2+$1 ; Port register A +VIA2_DDRB := VIA2+$2 ; Data direction register B +VIA2_DDRA := VIA2+$3 ; Data direction register A +VIA2_T1CL := VIA2+$4 ; Timer 1, low byte +VIA2_T1CH := VIA2+$5 ; Timer 1, high byte +VIA2_T1LL := VIA2+$6 ; Timer 1 latch, low byte +VIA2_T1LH := VIA2+$7 ; Timer 1 latch, high byte +VIA2_T2CL := VIA2+$8 ; Timer 2, low byte +VIA2_T2CH := VIA2+$9 ; Timer 2, high byte +VIA2_SR := VIA2+$A ; Shift register +VIA2_ACR := VIA2+$B ; Auxiliary control register +VIA2_PCR := VIA2+$C ; Peripheral control register +VIA2_IFR := VIA2+$D ; Interrupt flag register +VIA2_IER := VIA2+$E ; Interrupt enable register +VIA2_PA2 := VIA2+$F ; Port register A w/o handshake diff --git a/cc65/asminc/zeropage.inc b/cc65/asminc/zeropage.inc new file mode 100644 index 0000000..8d508fc --- /dev/null +++ b/cc65/asminc/zeropage.inc @@ -0,0 +1,40 @@ +; +; zeropage.inc +; +; (C) Copyright 2002-2012, Ullrich von Bassewitz (uz@cc65.org) +; + +; Assembler include file that imports the runtime zero page locations used +; by the compiler, ready for usage in asm code. + + + .globalzp c_sp, sreg, regsave + .globalzp ptr1, ptr2, ptr3, ptr4 + .globalzp tmp1, tmp2, tmp3, tmp4 + .globalzp regbank + +; FIXME: there must be a less ugly way to do this +.ifp4510 +.else +.ifp45GS02 +.else + + ; The following symbol is supplied for compatibility reasons only, it + ; will get removed in future versions. Using it will cause a linker + ; warning. + .globalzp sp +.endif +.endif + + +; The size of the register bank +regbanksize = 6 + +; The total amount of zero page space used +zpspace = 26 + +; The amount of space that needs to be saved by an interrupt handler that +; calls C code (does not include the register bank, which is saved by the +; generated C code if required). +zpsavespace = zpspace - regbanksize + diff --git a/cc65/bin/ar65 b/cc65/bin/ar65 new file mode 100755 index 0000000000000000000000000000000000000000..cd987c1fa2f4e6119e6db46f574fcd06978fa87c GIT binary patch literal 46680 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®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 z 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�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

=}xPE?J#1x^~=VfJ2#ox&8{Au;8?*xHQp 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 literal 0 HcmV?d00001

GjqNaPG=ss^UQ$hk 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 z z>iPF!eb}1x(nXqc=5J5G?0=A_`bEoG_5Yo8s~;t#Tlw!#zm>m@TUOo&l5XYuEcIFW zE}-8+-D!dTvhwT3^jLY_^t{roye3n>mDi>8Tlr`za{q7nqss5i0PmuIA4d35`p1!8 zP5&7BpQnF3{jbnJmi{I5pF#h-^zTdm$Ml!ef7XNgV{`h4(cg~#)97zYe=X%((|`|)AX^uZBF^09#F!Tq#w-iHl;s9`Q7Pn^^*SBi~b1x zQTpdo-`4b7ecFlsdq|Jaf9&J>qm=%?-m5>_F@8JDQ-53fAE11D@^8)Xccp(j`gfz> z>Sss#yRyEuW(8eGeOr;f3Dds~{i_(CEf{`B>MtX`5Bc3Wil~NrkiG}$Us8Vu`VS|4 zJNi4*-aV5iGSV&n)9JVPS$(wlTm3M))eqBumZ$GJ&p+v$Nn& zOAON#oqf)j3nqp*geJO;K5Fu)^CrM=Pgec}m3Q`W^k?E{*A7`9r!l zribOHOtj#0@u&QS6GnHju!Sib{_z^W(Fb$-9JfnDU2+3e%%ubgyM@b}9gRg($ z1(POBG3Aucub*e1bG}Cp$8Yl3iDS>7eBLO_B|rR0W5d#o<9GfAm1ED#MPJ@&=cRw* z#goF(YeYYP!r9#pj^#4g58u&8=NSC-SB_@JFpW~`;q;9gb@r&qAr@c%=x*3G8+ydf zaq`warsOvev2()o^DjR8z>v73g~LC4?6^_kAjED8%bzu2BX305nqklb#NWRJwyH=!wptt*vJ)LwDvlQ>+;gQ=E@8#i9ckn5} zjW|bx`W9uiHM?US={65ZaDcaYNC#CL$iDvYWBIoF zK2=DuU_1?m_GC7DW;^;TuF@ZdS1}_j-suaJZmrA0U!Tz<9YA%g8|bfNMDZTt9Feqm z)X|?L{onNe*$f&D=0EnoZjzO-r}9$bMe2*yuL}3kdk{n~$=8#*$8sWHZ#UMPzI2Dt zJ%jFrbg!m+JKcxrK2P^8x}VYgf$pz#Ti&eUZcBGhy4~pZr8|u78FVkCdo|tL={`*N zdAe`W{fzDpbbqDW@)m|qcTc+A==P;MjP4n9FQj`l-P`FtO!s-ZZ_)jX?hkZ-rQ7mW zhEF%Y6mXu@{e{aX{f6R6x^cPz-Sq3E(~Z*&=%!yIoo<|NKsTKxoo<|NKsWs=>2%|C z1G?!~NT(a88_-R^Ogh~--GFX-G3j*UbOXBSmq@1@ryI~s|B-aMak>HB^oyj^jnfV2 zrWcV;H%>R8n|^_Gx^cPz-SqRM(~Z*&=%$||oo<|NKsUXRbh>f60p0Yoq|=Sl4d|wy zA)RiVZa_EvH0gBXbOXBSYSQV(>EhreS4GoLkxn;GH=vt-l61Opx&htv6Qt9P(+%jR z7m!XjPB);New=i=ak>HB^kbycjnfV2rXMApZk%pFH$9(px^cPz-Si`*(~Z*&=%ybg zoo<|NKsWsm>2&>epZrosnyNc&B=b2o?vMOQ~I zN0on%^6t!Q7+94-H* z%GcJad|S#lwfw5TQTc5sKc;w83sb&U`JI|6U%OJ}_h_bk@U52rev~g9$>M0_OAY_9 zW`>{qLgo8VzNzI`LBo0odGDt{^En_B;px2XIz&6KabN#(1WDIfp0*1tO`?`6;LdMnnc{G-j3ue(9x z|2*ZF{%(l*47D>=K23SI$d%8sao;s6|1Ra5T7Iz^D!-iaTW&nGM$}q4MFG#(%?!UH zsq(9vDIev^#owDLUzySJ&oooM7Kd8M)AmjsKbo5V$-is(TT|XCYs$Z0RDPFc$|wJ( z^7}Sd{xVJfA(U@w|C_#4<>QoZ>i8MEP~`_uzNz^iIY;G(H8cFkSt>uenex$oDql(Y zSxqT>@YeNK`Kgp|s{NMesq!-^-{kT;T;*p|zNz_Nb(qShnkip1R^=B^{^Ta+UqyG7 zf3cb2*Nsy7H!0uL`Wqdo@*g)h{1Gbu4dq{HV)}zqRDMk}!;cPE`F~S>SX09vrt&TC z(*AQ|6XolUSNW|e-{ky1M&+ZFZ)*KdxyvDgU_Z)_Xkz@M2W$9;QNF3|r}`h-fA?*s zeDJ-7e=OyjYQLnvQ~6UU|4%n8veb_l&@H+@(Y?NU%Riy|2fJxwfw91QTbOW-_-h>-c;q^Zl-*VyWlAZK5M3Y z)g~JL_sx`#;7}}i);3c<6;=7NyPLQERJn`FZ`n-w_?{}ib2H`ZzS8=)Z!_g zp?p*8Pjw5G@7+xKiV~HtXr_G4<|;p;ndz@>tMX@2zPza&5almvrhK%uhJP*PE1DR7 z%?~O+hw@Dwf7738{h3Gk6Pg%)5a{3^=t)5Q2EH>ms?$~RFwNUm4; z_05#8Tcq-v&DH+9sqHuVg352#O!@e8D!)fFSqiuj``y#~{i# zwft)LSNUPhl#jip@gLR9_}9Fu@)MgWpMF{8FKVWI-C~u$s+sbsmsI|SX3EF@sPcC- zQ@-{|mA{|zO>IA^Csh8?W`-YqT;-ppd{fsCB9E&4i0xOuxB?|EFBjYwmwaujw(p<{JK=a!s$f|0%tu$Ml+O_ z^qQXkS9*Q@|EX|JqGHqM?{^;V(f$3@Cwg>$zqYNvn|^;Es?E=g9@xHC>OIcW@9&R3 z)}!0LSHgj= zqWdA;N9aC5_c^*R(|w)p+jKvm`zhTPC3%e5(5CXP#a7-19Fidhw4hEq?ix zSJSV({>G9w-+FuLJMX@??EMcutoi8UPnLiB+28_kXPY=db@-_wV1<*Eej)1izF1=&rl%-f53L_bT6e zpM5*;xBmgL1G^m5_26!YbU*a4KlC{Kh$DX|eItJ_e#tAZnl^pL)z{3t_PXn5-EiYg zRX5*q>+IWZzhlmwcilbro_p{6zs>*OOMk!Ky$_3);}*!hqX! z5B!~l6sh}V!7q7rS?ZL0KURYO$;)+JWCEXFQ7Vdq-?L43ZRDJLmaXT-`z90M}aXVkh z@OO#ZxlR`D=fv%ND8s)eZs$)8fnT0qh}*eK*>znk_er{HcplTP${uV>+|JdqdD`y8 z?Hr}iKhg9MxB1a&#O<6ci_clat9X8v;g=A% z^S=zgp17Smb|AyO!}RbxDU1Ju#O<6Z!=DE3+V%C?uBT}C6v*;_p?3YIqrD3DZxqo}TLk|r^`w`p9;*-XI$!iBiCg}+A|ChfcEqE^Ej~LC zuVp+CKg~AN904SmP6Er+6vqpFF2A+~8BKhlqrG#!^o-qQGrz0OuM1XZiL2Qt~Hu zQ+^qTFek9H+R{19@Jf zp4##G;Vvbf@bC|b$36U0;!zL(l6ca?za^gb@W;23^4$g(cjw3FSK_tf^6}@1r#<{H z)SvS7Tu1(t$6p8jLiJ=laH*da)tYY|SsymV_$hehGm8JL*%@pPT;d;RxzurB-pk=z z1c}|WXLuNTQCDD!PN72 z;`Y61oOlV^S&Lx%z`heTd`sd<`%atuI}*3=w2i-$;r87v`Ma1N504YK?{iJh5aRYd zvEiqf9{Vns`o|l;hhIS4z85wZ{I7E|1s0=g}cc3J^gPQ zKfi-E{hts|dibA-+xOGP|Fh}$_!~^W7tb~@C!~Cn9=<(s`~KSW%eil^K6vFGBW~a6 z8~>rE-@exm^yy`KJbaMp@$jLhXTG)z(|@Y*d$^p>=i+JKsWaRQh}(DUrf0hG^E+z8 z<$58}W8YUBF56QbZr_1Z|3jwVzW*j(ZTueolJVR3;N*YH`0YDz;vX5m7tfW%lOFz~ z>GASmt>Jc#0QI*(wGANdjo*vs-;CeGHxRdTBP`$Aq4-?+dhywrc+#uSosHklt6+K$Hry-6o~Fmc zk1^aUmy?Ox`5YF{Gfcmo)4_1hGd&)Dx#_WUImmyF>9O-Th*y~&55JSRo!epYdBF60 z{L*YCKa*bmNHcN$gNIA>T>d|TA9zgv+lJe@8;%+TADJGnKK$AEc@Bf=`Gt7W!%JE- zT(3Syh$p@NVK?LV?1Te|+j$@s?h(ds=SDF8M-#VmB#eKA>GAl_BA&GKH>hWd>GALx zrpLo?F@CSVy4Uo3{p|wd_wbhu_v+g_#O>S|OV_8S-|J^;jo-6#ej;w?j+macrpK!% z8w~gIZSyv)hhF{Jj<}uUV)}PA+%I3^c3zC}A8xppKm821^Lzq*jw7D-?1a+{_r{Cy z#O*v63-?0eNv~bcFn+JUy4Cc1_}#|u>3N*EoquBC{?YV!>3WxV_WUBI_jA+l@&5?C z;JjcbwcCRq)G!|a`%IpHg5S-9)+pXd;hab6iAUh}i^@5uR12jZ2o;D(3W zdV}4Gr}k8w#}xzz0525JL&+bPg)%%ApMIv_!xKgHoJszgTUC$PbMjOIm-U=vIR-2| zG50?RE-Rwvnj-iu)E`u<{$DxYnMeIAs2|P8Jx>?W^HLG~P3li@f4!Y6@OcsbKa)TC zxyEO@I>FzI@Yff?H^mE#Lglg*aH%J?auGeA)vOP@6ye{m2;PHwlH*jtR?Ii6hpF+3 zTe%-a{u<)lm@ZpKigFz$>SBfaQHq3nauIwia5t~N6ayI^=@;ZVrwIQgz$G8-o)0cd z1=kR_dqF-@HNkA+c8|z3ruTm0cJGMcPnw>)G#>_$|0UvfugQDVzm&M$n_}za%Zb~) zFNXh_xZTUL1@rTNh}%6bhX0#*_Ffsb_m((-Uh={2p|SH7+Z+Cf#{W#lb64Va&&|n7 z&h|fbkL8#9ex~Pf#pV5hJckjt`-Docjv!Be;*n>Re#XBi)RkfoM1i|@dWbgM865YI zB%Y{HT-K508R7Ko5X9N99;KH$S%0PzPssv1o)#>}yNFkhRD2WG z^T&v%M=5?J`P0OM(Tdx-_#Y6Dj8lAP#`8PkG2%y1PYKp*B_AqzFzRjO--UQ&g6i3q z@##W5ewN}D#E&Ijb++QGnV%zxCofR^I4y?Y9OBjYDL$I~*AlO|P4TDH3GO3adzk_k zlmA8H!Ci{aW52i5^iNlupHl{360edM4S0@Z{QqKl9#Nd1p9gKQelGb_bFJdCZY$5W zzzdc8uH?7-sZLe)V1MFvKb7H!0+;q4<-URh`FlHji=euTW*Dw~-y!Sk8>9|V)Azv3Om`=H;H=KyTLko-w~uDI>T zSc_L0f~P(F5*IGgJ6HR${;DRJK|FQ0;&xtH6~m3lixoWG(az<0n);)^DBe%u;7*I@ zPl~_6dh#&!$L~@73G$!M_*Z&*jwPP<@TaLK&G^TtXEE`lhriAEr2eV#Ih6gt`^0P4 zDSi_1Pl!h|iX#)<^ONB%v;wwcJ^Tf@)SrOqviQ`KKh{ziH)lSSY^~)|)m`zeSh2PO zF6$wYcQt?PT;q)y%7_aI*5@$XN(+QSbaUghCEiAUbc*FTVWoyUJX@k$Rrm3W1R zk0T!Q@Jfeo5yV*kt=?V^yimI~ySmo1tFJA>Kf4HiAHz*B+$ihMgGKlk6v3Y@f-f$D zFDZh5Pz3)1xU}D3wAPbbI9{wGo*JY0(ZuVC*Ns&?%68hWNPo30aMy2Kp!~zAXBXh| zzPs*otq;~;?MeRNBIW;@`E~&LgBAJw-N;`{{@K*uhx{w3pRFtyO1zf1^|xmbk5Iqi zlYtkiCszQMbS1CWcy?kuZy{do;XMx4^hQ1X&+e*t2M>R=NVuJQYPj+1HC#^XgJ&6T z1@TRo5AOn(e2#ni-zVPR!&eZG5w~)w1zsp0{#pcITLfQE{S{ugo1kkeq(8#`zve+r zZ-VJ62k!RCP|qCpdj}Fvc=`tv(SN+-$9l*STH@ADPc6cKMiKlR;8GvzmS{YWV>~Z& z`gaJ*ztMVY^{|TkRV$Q#A^ZQk$=})If6DZ~qx`ZzOrGZ*{}w@2KaIbY*Bi$Fp7PJ& zxbrpnQ{=}ohD?U;FJs55jxY*}Q zy>Ry6jI;<3;3`G*mY6F2^IiPw7kQ;64j{I>!xR1fEpKmDbK zTgCW1NW5aD;@ox!R1-lo5m>Y;fW980`9qIfsdCwWFWJ+S9* z*7{bXaBwE|_xJQyQcoZoOYpqFdBo+!)3UJy&lS@HMR!Ga~t_9 zJpQ|Z7pngc6~UjP{_2xde=o-8MdHD!ito;Hd=t2oSE^R?A?ach1RppYo#HKuS5VLA zzzfA^RT2DW>W|9{M?BV_%a#ZUH$gng_-sx*=JD?YyimC1Mewdg@FR=h1B>7%6~RXX zcl{5)v$>i5+j+!O4`@EW#r(XKxP7OS*5(&nN8G;W*+a#GJBizOKeA6qp83S>`=IU| z@MK-ty+^KLc`1AF0{9E%n;g?#2!EaW;~#2(2eVvO6w&i%;8Kn=ztwQ9|6E;!{~wNj zn;>zU@~0Tj^+ov0uplYGYsKygk3(9#e$>)M-;A@NEB}MAV=0)&ri{LvK!S^kKOSfLA9)4M5eC$?4 zPtPLwpd$EC;8L$D6Zz$P4sa>Qc!icDkGBjicK9|yiuJjc1#k`d?LJ5dyXQv3c~7U| zw;Rs;2MwQVIPbMI`~in!f1qqkl85>q1zsrM(rCJFzthM0{0p6)9fE4sAG0f7E278N z!P4aKp`i!w72*H12wn?Z@;N>(KcDM}R}#OKo+bT9$TRCd6xXw5s%X#t>$=r zyXiSy^X+i*KT5pvaK$a2Z^J9`wEH_wW&EEZfAvYqe?IlRL_AB@gA`G*3R_#`Np|02`BgC^)k=6{lS&2_4OfAZf-y!tTZm+ungNtymD6#quy;7Q_%0g8+LD$gs# zEBDv<^iVi>pLp!ATAvRi{uS|x(-faU{BSfk$xl1~@h!&Zd-7LJ(r~+x|5xIXJv7{< z#7lQkJtOG2w8RqF6A`l>Q=hOX#_?6(7{_tszN0y&YGoE%IOhmIaxRLy|UjKP7!>yv77N!12h^OSk zA3VICD0q%|@(4}PR!rCH#H+h%Of3HI5f8>FBR?|>YE6GnEw2F#_b1}KAj!l`roF_>}$6&eW6GRU^KR z`X9$Sz?QIA#|%-;nyW#uH~Ax1XncMk|3UDIe!Dkj8wwms{v_>(uH+v8T>8&6$63q& z;pDHD4_EPErstkY$B*yn_#WBn`K9EKoT34qOa7~gr`U1g^`d)jCtkN_3+Ert{2AX* z<6nK8rmLLz{p7EXE5PY;P))pw)1k!c zn9t`hsD6e|QpLAZ|Ix&wXO}q6x5z(&c+IN{R1rUmcoprLKE$si9`x1nwejUf;8K6e zxjt$6f3xxLU*a^JLOu5ouSqE|lK4}^WAdRH9?gv)c#e3qpW?@p|7GHdFEoE1WO^@T z{ZI4WpL^K8mXW{WOVxZ9^?Ysm4^#ao5&w~RaDwu4c{^Bd{KqSQ1^Iv5OUp5qQUG4} zwAfwos_RRf|5&Zo!4||*r>P$6|Fa!yA=nAw zo_C2?4c3U9&wTp?c$7S0=by|syAR^dQl%b2JId|}yqS8wrT%zQ)7y{AekL9~uJN2k zyn%Sd85$q^zIfA4S}yVZwPi)gzZGyP$K+wk&u#RDcYiG4JKc`ZV4Bk|-=jfnL>_YjZmrF!<(=md`tuj#1yQ%?LucqKlm5AxgB zQ{Wf;8P6VG?DSALg4%Vlfg!G2{fM9YW0iPvtf_#rA5974QufR?z8Ye$$Kwo_~G#~Mz4 zi{~Clh_geuVe>Jzi<8KoW<~pi4f1s2)f`{;W&R9i{jqb{cVaxxB!7|{SNU02a53@N zIU3+Du9M{@X|J}q>>`yKtE}vUU{O$f+o4-Fv{<;;~uHU5o*NF#Tse)D1^ReJ1 z?Si&btpzDz1^JU+zw~F*{}0tahx&gZUQ@M+Q}8+U-^F;^JsW2CX2_prJ-6{IvZto2 zIEN81pOHfY2TB>%p|Ygiv{Bz`3ExK}@4WxKX}sSad5 z^do=b2F(B~-{HiAD-`KN{iA?8dqX~8#}jq`gWzoP*T?}2c({!txR`i_7oRJMCl_f% ztlzla_^;7$d5uJHzrz_=$a#+Z)j#S0bqHzcBK)5e!M~@TIM*Sqyw(vl)W2D| zmRG=ieNo~&0+;#|_vTsqkw3z5c{}p=AfBfEY<6r<;+1VTb)0Ml!3=nv{qTjRcLvMx z7}Hau`9GNB^+@6g)}NEff0^+!K0{dW*BJkG+7G80&pU}nI3Gdx<(~P(ZGmkf@#l$G z9i)1=JQ^$^9^XMDayI#wn*J`@9<9E8N<4O{>RCYkTH@)WG=ES`?)iy$?GKuujvO%7 z5s$JS+PpZ}Tk|vakn&HZp3R6yy>+>*iPyE(_{(`@@<_bIPDpv{ndc*;q`d4tn3m+< ziFzX3e{1b`F5_9gy=lc8>#P1}Y@Z$N1@zb73k^gz(ac;De-k4RjjufTkNYeJv*vmn;-Qh9_2jL#+~8B>)L9# zwk|Y^c;sQ#Y6A=VR%|Buuk zo2L4EGM;OR2c4DkU6$iFEEl`?@FP>yS;I}gtbp~OTN1CHpm>b@*CYO7KP;sE%;W~! zgFnhRgq?$_C&GHtjl{!E|BV`dvuFAfxBD5cWB@~eOFl%s_HruuYxmcBxIguuK|IR- zDoXqU;x+7N`VdbNucQ57?W+^pS52LkuYKoRMgFRpn!#qbr-)bbJq692;0faK{^e7(iz z3{BTc>fa6nw+mMe=EY2jcK^X$ z#8WpZawYW~WBmZ{weHMiN8&}f*t3(Di$nvIGIAuDQwqv zA03B{;3ejp-P6U_nZe(wKXtz<*^9b*GXAj(HR6{s!JDB$xpL=wt2@ZwiFhULF{{tr zi6>@h#Md$YhdVqJasI4keM{e~z1=}f$4q-MZRjL>1k>-avUC*vcpA)NkiG#|>DZ@tMM>7@!r5I^4G zp^V|rGss`{cO5S-Abt_?nvWEq6HFr>kiUxjvx&!OhuA#pA>xs%G(IPie-ZE~e}|oq zfk#je{e4;AP*41BO_0qOej;AMb+bLG>{sGRjtgj>?vd_M@-5L*^X&%ae+dj@!Q&ki zc!T-21@X#J8vhFF*^YQHO!3>a`UblYk4#fNeaL?U?crgbJ$xYf6MRoSoBW3pk5AKx z3?<%&c+JmRUUP__L_FC+>v>v<*luO`3U zA9X7A&mvw^su^&HW@|8qcuEe~#Ips5Eg^EdKGxxQ!dY=i#al^6Hp$@?LBIs)HKf9Cz~$bQD|bKRW$hfq(- z+edT+@dWolnY}8<=t;PCuXqXL*_ZsaT)^(h&_@uD-J$iNq^%OpBwjg7@pAHC3|z{k zn)aUM&vlMJFGxf|DkJ@KhkB2`LlLOrA7=<=2c8&secN zj|8Z!k*;NBWJ%GLXT~YCE~Gr#KVY5><>decN&DRY61YZS|)UXc; z4@DwIy~~aHIwo4jGXxKR*YR`-+~Wc~v%cpAI-}n2H$?yA^6%mAx1S=xx=i>(+E)tl zxjWENouMQ;`vqT@oqUnt6~PDJ>x6F?{0{@2eGdPX;D0Lk#w#4I?aAmBg0JmyJ_LDq zgW&7@p?iGtqVo>HS8s9nn*^u5p&i)B*nz(he(vEehYCZZ4Zw-N`PqKE@m0Y$_yfH7 z1bgy*(V5c^*n9&0@pF&hLuWewk!IRw9*pJshQA;GCBaWX07L(>k?}A8g6708=m-8U z@b072flv6L0-_M-pC$Of-#9;M2l>ef-g>p$fuJwv20GdR3GvUM;2VYHsOz=4|a!K%4YrX?=EaC5J?F)3u&Yw$!9}7NE^l^Sc@WXYut&WYVEcuRKX6pg2Xyqn{Hc*dVT z2n;{`@=Am_ygbcamJeOdBR`Ue7zO^zJ}lf zI(Gp#XP+^_TN(cB6?{wk*UQ2`D0oi(0y|jtDF?Xx#k}BcgX<>s^%CK)%3{Wrz zejjS`9f7jVmWE^y31=k`E(k-$P_}pJ+w+rvlFTu4nw_u;gd({m!2g#heZKNfs|8#MTY-`#zg;B%kwft39#dY!>_llpp>@Yi%+cUI3nAo!s2f)Hsqft{h-blHO{*NowqpR4Z^=$@J-bp;Lhx`C3x!tPC#l9-4pt~!Qm&$KKxqn zjh{PQ(~cf_najh_C){6uMf4vh_~6SNzxz8pg0KF!^YdT*adbZ5mX~GD`Cl&l_00bG zuMmI{|1p{0-?&ovE!8u@F8e%B@Z85-Pj{%_*x*7+eXR(8?)P2Zo~mc>5&wsNDSPf; z(VqdIc4H;ucYY$j8J*;e{F>;zM)V^IKEiwZyj}1i<;(j7zg6%7ou_)7;2*VqksoE^ zna>COclx^AEBt>ke7ujAiBEnk{5b{Y|400}PwgVP5Gl234U6D>;1Ks;5otPB)6l2pDXyf&avzld`H07dD^_-r^t_Q zp6}!QmB#rb*{jxl4tSgJ$3RHT;3ij}!ouMb^Qw0h^n<%P_7t5i z{Gpe-zJ$2?DS%V2H!^yCf$(#gbD_@^eDG(^_+W4M2;S0r86i)c5&g}~?>0PF_(L)n zPtZDEEV+%|=W-kNK@Nw07aZ|*n(y_3uSubGyexWIfGb}p3jdXWlh5a7;>@=Szo2!8 zn%n2yhL86$^!s%W_vMTV8t2+ae4KkU{`UtunRx6D!3VE#0?!qF{wx^RaU=8o;1>*E zNU5)Hi_Y93U&picY)kOtPxSG;QRBH!@HN$QE)f1H@GtClQ1$S~3I2G4r#jT-1;Rf* z?c)#Ydy(KO$wSu#-~5d8=k6zXgAWQG>4lH4iqCfn zKJ+-pf1>DrMevma&i`Ku{yo7r*ZP&MQ;S0ekaPrv9|>L%(;cz03U$9Wa}Oq!e7%l zv40dFp04>0{iDzKcEP_O{Hvi2orvL$brcuKq&s z+;@Gw&K3QKKHKT9eZ%G9Ho?ydaPfIW@Ew9jdJptW!SjO8o#zX6lMgqV0G#8T(>c;0 z|NDf$@l793m~Tn&m49}^f&ML$hpm#YuU=n|&J}+)wU6*Ie;hRfedVn;Nq+cqK;-Af z!yIwH#pz7abexHJ2l4LHa1j!b=N2jC{>?{GQ% zmZL|P3%;UrYlo$%R|&qZJS*6xqTqu%ub7MclK@URT+77I&j+0S4rrqw5&p{sZ^?f> zQSjFaKBs+_lHj)pJ|sCgN$`&Z_ys<%kY9hs;6h4$eN*^zUw2@LZ;y)qD>_J}v_JZR z@Hgbwo+MiTC3qzMY!m#~g0HF$cADU)&qh_(S4|pF0H~{3l$T+QyMk}3K=`-9|FPghnf&)& z!M8r-<9ynKyurhUT^?FzI%Dn-{B*%11qe?N{XxNVLymY<@Mj1tb*qN6Ie_i|aRnhqi!RJ2Ue0Z|P z`9}~KvrAVy|6RJG=&hk&`PpE9{ypos#`9#sHf-AJz4xY1~~bU%hdC4x!mC&&E%~w5uKLa2cOV5Um^J1dwhT)zFiZ1AXDFXm%-II z_4R4t7yicwxb9*R{ZM{qa_g_&*Z< zrr!Gwal)?zU;k6*f9zk;$zx7u<25c&!Oomva1l*?oh$q~)%{RDwa<3JH&w^@uHerQ zd@z%LjR?Lm@DRhCl{{Z1cEES({|xw)pSNZ7=nbN?so#Nln)-d0;A=V{HY@mh1s}-N!#^zgH)rU7PWUUT zrv>_V37*prhu^={v5$KFY|%_h2Zmo59oc^j|qMx(9wINA+BB#d`@-R zSok*vIuCUQ%!xmLC3q|EfL93rR>2FIeCNZ04{Bop=E6RA2!1?vOZa<&^LP^Zzy37m z|GDb-3xQ7NJo7gMADVYMZPD2jeC|Jg%OI~6d`s|X-3jLf|38ASz1#J7L;aq(%g3{I zy3-#P{7k`D6wkj=bj}fcKz=sZlM4W+KE71;+_!3+30kLs(B{T#tJb^Zt8pMCa= zPA>ENT~`Y~(!TK7!mnZayiEnQbeC^#%c~1DZ3O@HShnEEZP@r=o27u2C1pkcStBTJXf`2pM zXX29|2)-h}AMD$I3%;hpSl}}^)X29j#mO3e^a#OoD&(w)504UjP5WiRoc{%ZwaAMzP}MDUvhA9}je3Gi3rIp_7xjK8=|_^ZmN z&KI2*D~`(PhpAqw@qZ%po6(EU2RbTTg?#_(1{cxP*S`bKykO|l?q6_gpZ^h^!EgEf z?J`WwC;Rxr3a29eeG>9*;IQ)zKVoj5+Xc_I%3rs)I!_%&C_~w`|NTT7ME%@Ngj`+L6 zzcAqIeCb(&KU?tDn;mer;8z%2H>s~b2z2y*&AEDZRPciM@Cd>GRPdJatl-yPBlyZM zoB^k6{C_3*mg2y5(Rsh%0}23d75u(OI3IF9a6a5Ce*V4ikL&js_X+>Ag0I#ce?{=G z3Z5&uU>3E3{Vl^&NALpgw+j*it zbg!?}raz7zsXF|S_Fn=&FBJaf$!;GWE&MUTSFdsSbsGPpg8VCyy+{3?`UszI^gSn_ zvT1a;#<~96KJceYfW88|8*-n(OMVyBZ|+gf$ybQ}A;4`PBx9GF!jDSc@4H0oWrA-V zb^;2cqniY8X<@+@`@GfQx=DR~T=;8xk@tIg_PO7H|83zP-{XGsO3n92g0Cpv2yw#C z1HR%1u+cszOgcXcs`L9Q;P=J^UsGKd%VD424fvmS%CD20Tp)PsXU>O@3V%fKl?$En z--^#ug6Gb6_*H@*6ns_n|A&iCHQ=A&6MeVvmkchX)Yq#3w|ZUXT>2YCCsLe$j@tZG z^0x9%zP?`&{O!UY_^Jacg1=AjAu0$yVIScWg127i{9!$UpRWqO`G-#b1_wu*f**gY z1N6F4^drDI{!N|t3-GbBZhe3CWEIs)aAQ`ztV8}?|P&^c>iy}|D^C+4|DwQO3uF|_?r5C zyXb!xa9gj;{^>7-A1R&;cHq81=h;5~P*?md7;vuFhU#4xiT=rgugjkQx!{i$Jf}P> z_?M>{Tu7;}A`nP_?&H3I;rDGW5B(1L`s#Rbbfw@!%I|_c9u$04`?huUQ58HVyR={M zcA#H!y$Jc&vfx|F>+`~Yk>G2$JK!zi|EmK1E1XWqBOW6;-~5Cle&!^#6Mm%kZJ#Fk z>w%8sU*a5nG~mC)=|5BWUle>r{dNTZZ|OzrU%lUP$?bQ9zp39h3w7)t3cm3cClL7g z5EPWCN3FdM3Gh<|&t=YEJsxnbW9wR9uMcWGs}NVh2mZ;&^L~xzV&Sjqcats`{xyw@4j`}RtnefG%@ALG zS@40(dy!vi1e-DfmwXUwwuTJoNjZg7i@@hzw}G#>_sbaq8=2 z;TM<)<8!_o^J#*&Sa`(e2lhYSDJT5FFm|f~=<8hJ=YHb&?-Be37#QW}_`f;hzb5#z zgg+!by+!cdf*;TPj^6>n3o5AV7)`V!_~4Ms&+|p+g@Ug<%Qf+-g1<`eIoZQA1h2|p zAOD2&^LgUiUxt2lKJC%M|7*e5^unLEk)rnp{9&gP;@+s-Y;}@_+I(kQIocI>W_a1X z*j8@VD^c8TH{1Srv{tG%nn|Zto~$+Ey-SNk?E%MY^>}Y-F^(o0odczIqt>WyYn9ra zZG(i2kq$57cB51;I&q@yDYc@-QmuhLrdpkRr83i8YL{cXsn6AE?X1P?i=Lg!g zPU%oRp6RqPbO-q~l6+#rH<&d@;Y>8@;Kod+GQQL(8^&0v8n^4q{-6sTS%}Mr(P#NE z2eUh_x1t%aeA$}JmfF?W#y`<0*Ow~sXsxZ;B(-LPmy;O0*y`iJJ-{=axaGYzICwya zJX%ZAcjTR(?1>kf?d3hqN?eb^is2DD35$ihk#=0_#G`SGv@qsIrPQwQdN@gJiE$a& zInyfnYK?&AOznDO{YYV-4I^&#W@alm%VF7gy^rywdR_gneIPzs>XgFubhDDW0|5wB zsnKjSAZrksJT7NT)hIvGTxw9*O37jwr0@t=_0plZj?0myb~|o#xEh@6Ok7>WZ8W?z zzip@eza!ckAL~pS`gVgDrKGb+<;W+C)Q{!GXtsGcZg4HErvxHKLO>~(lDOghvU>+& zh4&@#$U@Zw7AzZSLIWC*=A<0qmSDTSve7)+m}-qIwnpR1QaK*EX79FI(k`Kwd}Dd4 zm7kgHK5)q7%ybW;=J`?Ri#Olj-+p>3+kSfL{_SUmAE5o%Vym;9Z&#y{u_ES!t6@wv z->6K@&j*>|jH@wqxU<}f&1M)6w_g%fi>0I;@aDmPhMZ?WzeYRa{B=gPoV%#QZWahx^$nI?yUDCa}%({gf zQbsU!f4H@B%qJEBn#+|}$fXA1es zwRUGVsL*Lo!EW&BY%`f`mMVp2%Wm@r!vomjodyE(OsCn7xA)yS?eMINNm^Y*-gNPJ z(}#9ppvNZ{rEe}y-)z6M@9whn-6iRp?S1`j@9TJbU(eh7y58Q`Hzbm5!NhDT-UE2y z#Bt$tap6R8;q7tZO=p%4IWjK1+sS65nonpgj5Y}yN1c>iIx)L+a^{UihmKjeyi6ge z$KLW}>GlRN(rhhT_wcFBrB*$*o4s*0f6%+J%P=H3svrmudS3zx{Juu1z3lkiTW{07 z^)81=PKc>aY+63qk>+Bn9y$lFoXizVi>;ATQZ7~CD7X@%&=mrEcO%dvdql8%81JZe z@3dfUE5p#x@`69_-DjWsn0wDhjQ;fOjPo0veMU}nkmBhjWs&$<>2l(^sDooh~EeCO@=SE^65)HCY>a%!h4N0>-Bsm zG#{BMP9v&35?k~%9jBs##TJqRG$h=){-(Vr&=8Z;INNmDp6XUb{$+17VZ*STHKOX`GeOKbb&EAKEzGP34{Ze zBc*!X;|S72a}FB)6g$o2ShHO^7H*d6o%Btdx~Zn0R8voqr9(ZmG%<$kUCL>~>DFMs zkP>u|v}zS^g1g>Lv3ThExNX^1vBW{6PaCq`)UXJ>JKWepDsts44J*E`hqF|*48b2P zRV`i74Lnk}3AoX_X`~*2XZC<2vD7uy8DOQP-kUfg&)!Y4kb06Vq@Kjrm5y;{4RAI{ zidKk^LU(-J8ddMsNrz^S;)+>sxgb8k2w}j|5wt4$P2bWr`~mK+|z&soj`mD<$4t-1%Cg#>6MnYOEeJeMvV_1iO9kG6u%X z&-j#DdjR7dD`CvyI37c<@c>D+WklsvoE{oM(-Ga*OE!Nn6=NvXuUabAYx6bOUF4w0 zI2*!y!*_czUW@CM1GP$LA+qE--)@(dQzK^E6s5g!Tw$-4kOl_azsFQ`jNGbTD<#Yz zk7F@UYbhJ{nZo>s)Mxw7i@KLPwnq!KxL8KS2T|blMa3r5KVDvJ zmxB==C5ZJZhFVjph&PuR!bQB?X_q^Bd7)jxH#T9j@jpgy|IZ`;jA61U*Uad5#f^hg`I%jNdDXqx6Ck7EVoA%JGO7n9wq>2Q^|i-~$Y zu9oVQ_iYzP@v&AL4wY_a9+1=}l>yLMrn~j#p%Oh~6*(Nf7UE+^?7mj<3Io#QR;fdu zLk*|Zz~yKReUC?RBOydURccQFAr#;o-Uq2QP(nlFz46gJD?^d}pG2&SSuJRS&?M>> zhYV>CN_V`l>I-su6jRrd7wGRJa_81x&|O1!L^8ubo;bg79uEC&0&#J?`qm(<4| z1VatNj9Tqdb&(>xyOhA7xR{2hcf4Mz792rl z3*sz5TH8_GqrZB9Ck{%`O^kXHRc{1I@l{LBP7LG7x-Xqx0qPh{mabnmx5K(%p@6!d zOEMBucnhW^_Ot+p82jTrV~T^VMrc9uB;BQK3xj5)KjAi*V=iYy?lLI2P`N`Ddo zbsE;8gkoc(>(6O!4=h0H6RWzS$K5alF0txnwApaL*s)fGk_6JJGzHVug;Jvmc^g4I zUTZ8NJG37AiT6nYOzb?23f8u()289kY_$|CL00*aM1Q7Tvq@ z&}`2~Q}zHuMF?f^s9=ybiuGQpBMTZab=au0oFDm8VfgTLGo>T&`&gYT`L{nsMf=h@6FTs;GBdR0-EF<9!`GLjuDJJoCttJ$UG#F<}i4!h8@&JNW z823x;C6tl`iHhA;Xwq?|eSspzQ;!=y1=dni@G`10>01QU;dU`zOt3AGx+QYbsWc$o zHYEg!7Qqd}z#R^vl^j*sdgf@YQ(lOYWzO3IOj{0=ya95XH;znce=VtT<70VoqA}Z! z;|NzUcY{#EM#bRMu^B!KAt{-Y@i9!dJ{ccDbv?+pZE#pi4 z8V?{`74{~8Qjg7@IDTZ+%B94TJ{rfF(tHdgC?(4Iys$`(7Yw4cG+a9@H@Mz`(0O(^ z+GLT*qR&(~V9%S4BS0kr^Gn-iIodA4T30YLy4(YP#{@2k(6ObI2v2}(nOzVh8$B~x zh$bncX_>qr^?1I7OvWsQjC^^qQm00jBbR!cHn!T><5f#F>=8BF9Wx%IaE6_(>X%zf zz`(}JNC~-Vg>0LLJp^o?ZW)5WO9}?jxEBJY8I0zcZZ4FP1qmc1+Ok+kF&^N~1R9r% zi%9P|h!)JC32|I%mlqUVfUiO3Aj+W)E>%_NpsF9U70jm>V- z0@Qt4?tS|aE@=ScDASi10!4l`0|!$q?%KPrIJUbuKAopI9i5JfyC$cG^OMD?@$s3l z+2U+|cyg>56-Te$o8L1r!WriGAa-Hg0+Uwde&TGCQZi$10b;?(%gh+|OD5*0zy~PO zOuL+)pGTBUPtPHmy+a%9091?M9=Hl463tdSRyeCewJ}0$QJFOCL4hTj87|J$YuImN zLD`d$XlAB33SLKJqs58DY~pNtDTamwiwc)gpe2jjvrY7bp>PhVL<+ls$Zx2Fd@v2A zZex%jg@K};VKeDbA4k9y(?3&k5qZ~_s5@8}^C=Sz_pt@Kf;NN6-VU*50|rf@qXsFk+jOy#Qe{!95?*Rs)I7M30Jv=%nH(6}Ssq0>0kXLx`B8_Q^bx5{kw?B(&VXw{@CG5N0I9%SbQn z9?wzp^Q|~Y2CI+k15ph)$l4q$3k|y|C9uEbN18S49NP>S+QdAAfxXSnj*Bj~V&2t~ zFVo2yg0o6AQ^Q6@+~ZbSMX8^Kf_CQ3?qV@U<2C}I3NljUT_uzZZO}yWV4jLR+uR3d z11X2qK@p-|#eQl6_FBJ|uLNy4sMW@#p)W_wn?PkI;FRDiGK^=j?$9#aB2~Rokx@Y; zQC?{Gp^_T1CF&kl8qS=)6~RRdF-9L^ci$KD1fSv}M=!TZ6Iv~@Bq(JKVliXh1N%5& zEjMdm;j@MSOH?S17RTF7#2pkXxJwhO*+Qqut2GpIZX3Jqn(P;!rx2M!T z3>UGl5hF!&(p11&8GCrJjkIc^Q3ncMEEkV7Yn37#Tfu~+$YTN%3AM)xG(C0U%piLx z+gk)fmEhu|0%ba(fXfe)&=7@42@wO$BgTdyVl3F4gS0@>T!vg$VS0+i>SD8ja1+{H zEP@9OnpdPAI7EVe&Ec(vGO ze2&NzgSo2U+D)w^`^}bkvB(Uw#1&KaI;JUR{s^KvdK@?SSZOR1C6Z$!9;P-nv(MB9 z#)P&Alc~fQkXuUxp#73hv%wS#mK_Ew+LItvY*s-nPbGm8ceT=p_Kesvk{IyQjRtzf zaR>8-DKAmzv{P0eW)LATmu}<;PZ7Wk%{KE(ohA*Wxni8x@XcPV?E+OqZmnJIIyOwi z6^`S+zh?B7o({%j!-M(ZW@VYOXi-0H2dgOHystrVzSgK=rc>@YXadoFsBD^Ja%FeD zg;@h{c=`(A8!9_spGBW|%Dgxlhr;37LJ&r@b`*q0Ejo5YVHTFnYlPznIZ*{ikEXV? z>esZo%heUc#l;e&tWAqS4Nv6}o*GaF6cco3ZiXzrj=Sk!Cp5Of!NCod50^O;GMF-9YGoS+Fk@XW?B@BP8)w+|ROTPzZHXJ>wz$2BkB0S0G(2qWq3Dvp6xk z2kYF{iP_mbwvf{DVfS%#{j#P!;#W^qa*X{2TDYnC9WF6tjM&A+B$h|&V9YJxVn{1J zhuSC5@mkr+S&6T4H0X0(rX~P^Moq^?X3(EEeg-Jp9KDVX8wa zh|Bnxi3?$5n)6=IsoBOMrti91!uOqt#J;>|Y4&EQiitzIlMhsfBE-*hu} z$fU0(^Uai|x$$Lm;|_%B8ahU7W$|7&dZQG;xL{iZN1o|WO_&_Zjv*yFn*?8FhRU>+ zB0zULj`?9K5c52A555i3H#wn<5atQ-&0^EC6AuaC(kKH3-}#xjuH`|z<*WNKLJzDt z!U@zLYGqgnESz-->x(HO`(Wk6tS8$d{d4UllxSbq;sz`*taZ8P5hJ{BP-msN z+s{r40ZfsV$>38HyxC9&v!E&-iv*d#NaPt+^Tx8yW1VZP&YHQccmdJI8;soj3qs^- zp5Zj`_zno-3o}*IrK861bjgR=ACiqa8E1JW&eI~~v6aPmFmkv`I~{H|f%zhBg&6{_ zV6UR4B&s`Y*3LjdHs96JW>0onDFF+g;xaYDO0X!gQMfto-hNQpI_1qldc5sLfobrq zj^x*ZKO};QPXJn10sbfD8gt#@dZ}^P)%ppRIwoI_P%L^vi_NYN=4&5q2zi=J_Au^t$53Dc`W?NRnB+Xop7vpLP>K=rJ zYCk5*yv_FTc!sG|_e20{G0S~Um~RGOy|@M?MLO7M98RQOq)q0MnTSj>s)fwA7D{1P z%f%Cu?-uDwl#5$NmFdV~7Kd;91mo5>B=RrBkHsQF+v3>XQIyKCrdE=Z_9~!r`LPhfk}rUn z6EcLCY}rV_DNfPNzKsBUD>Q8{A^pY`ggoYpaD57oB0e^3uEkOIXnF+XQFE-pjWgIO zRVwjyiHDfRilwrroT-906Nn_3I&%fMIo7d_s#%y=a1kv<3^bU9Oy9S(=#u2WC{BW zZYjA}wZH*SB-a$^aP5U78w+`7`bZ6*p_uv6W1!&tDOS}E^I241hCmr7y$E1|f^iR6 zR>X(Yntw8duE6not-M%-UY2+4EG9gcFyCEy{IN0yC=<3P>2P1r|$dgUmMs&k#8J90i&j6_*SVd7z=k7RO%pHZoz6n@qc!9Cv2x6YL zy^+FgS8nH)EaS(7da1ujA4iJUEEr6H-}Z*Ai5f#mMzRrdAS1Tx2W$m{BhHbjV8+ zsxjCX(+@;{I3dqvweZ-Draxlg0mnS7lFosq)7&sl7N${!;5nj{=9yJQ;>6tpHwlS* ze>06$NM_?mA0JS>V0F#jtFGp9?VA%Q#h>5^BR?Kqy~dVWyaay)pycy<(DYb1+jFVC}Fhqwz62qAYZmilVmoBN` z4~kyFR{lJU$_z3mW~;C%J$Zv$R~7+3iU7=lQl=8{A=*RGsiE$X1q<^-5h%~NuzO;O zazaIb*RaDu-O=?0`Ig&a)gVeHJBSf@Hr=9|QRMxdcmg>oSk!__EpjW2EQ8RsrKt2F z=^%M>Lh4qG%!^oxWB!7{kZrJ9JP{5KFj=tB-GZ5LM%x1x%0}im1N=wALkryg=5%3u zsCO3LV;YDquwN=JQtC}OP*mWtCzDVn-6`*3Zl0{_F@R0RaZovEh|M@WmVoz?Q79%} zY?*Chml;P*c`m^{Oo>~{CA(df_N^O`woO*zQk+;-O zKYO7%mTf&?t!1pc*)+~wm<%~jQ-ZG9IIpAqvV(7}U5*QrS?=#;G{lR7dwFewZ9aldWj7Jj^4$z?A+@7|An{6d|O_Q2$zYU^u*oa?hhnA3N^AsQsE;2<$u-UcQW8j#j z7e2y5!Q5XPVVK1(uH`tA#AUZ4mU+@$GbyuW9PUx%G;E)jQeiVm*Cwb`n6IDhH>=3f zkHrh#F!3E=5J@c>y$woqeUUz`0di$m_&%jI+1MQ)qk>pjgR+87@gk;q%vA1USy;+U zx#6J3c>IWcErfV|vO+&-N6s-s+i8K(!`k$cM)HiR2O-#RUJ2K>rH44lO%fA8hzA`1 zpwc9ZrI07%+^e5aaj$|9qB^GI6H@h=c(E3h?2X^PVbPz+{pkn*+&JFw3MLtqjP8KI zE$vZp1w0oA`3e`ct7PVl)akU_7wsWyD+1(T9(wUCeHGqNClMA|!ZvuiT*qSt<|w-E z+$lGP`~jsjq+gidqg8yS`Vnwex726#Q}OeOi#I=d0;Tzb{wcv7EW;b zmQ>jybe*j|gXe(RkUV+F&1B1tFfb7B)|41H5VIIpn6Q9mw?wRB6mw9SBC-x5$m%&1 zlIPX=ZlR|$Zc{v%bfW@!VP3)GJmJ_jWVf(@dc{s#-o4E+JNC_9A#naedW^}@LzwJS z=dnlFjrnl!P8PLSJnFQuquY!0Q9ZJ_92-y2FtEOa4bsK_#WXRdI#~p5AroB|ZG$-` z`e%$OObx$2gd<#??krHo@o3ZETN|XE=`Kys9I|a>(F06#leG9CY61g6X4;Bd%C=7O z7K`=Tp|WRiMP~S2q1kyM->$~7PMrQb#vLI{t6OgH)ujS<;|9>>wHZFz3lj<06DYQu z5=7MyGaZ%l%B7Ep$<7#lNP<5_#xpWZeL}j5=pDf|oEXvvvek8k#ob`CI*h^WxFr0{ z{QcPO#>9-<16cu{{Gg6{oax5hva~8*V60mb5AWPN+qiQl58LUGb<}De?ec5KWvo(k zD+G`tEDwq_zHCm)Eni#%*e#8K_IbTArC=ZyW)OkrWk9+aXIV}SXTwll*91>O+{UfGL zo#{!pq+!NJ0nZUae4QpQ09;<*y{q=Mz(5^Wx~jD5d}39 z$s7(8_QZn`nyWU|hAs=X$4-;Lf@V(MGe|T;35BDmrS}tI(_%IyJY5^6J%)OqUL>&# zL3Xq)u@~9!4Fd_W*p@7Ws|I4{ZPmuoHXNT|`C&QQ)&(6}s?{q`#~FZas71u>R%D2< z*$dIO%5nol{TotfPeOp7zA55a8`~sopsN-(4L}hUgKf6SvTYtWc;+vDY>O9)^Qb|` z#RZgkx_25@et6>P9cC}@dRISzT>ovv z-@Rr3q5bI9&f)Og`JMg-+5SJ0Y5$==^7i5T-Y@sJ59=48pTb32|8Kj>6(D@)0;0aN z{eK1UQ}9n}7p?M#aq(F_;NRK)!hQJuHgF$>f1&+NYJb!JWBVVXE%_JPuc`f-+DG9J z{sM=eoc-VX?;c!ILb~nWO z{;f>=yVd?~wO>{Lfk0>%z8{rozjCwpyYfo^9@-IF`ggAXHaY|CNh{1h{N0a@JJdc* zRPD0uAFKWcGjv1ytp11Tq`!mgr%7z8|J>Ug`UHFxff(i;>=#EF#-45;Rq?~<_57hpXAN2N52?JH5%x(040oehqga7~l literal 0 HcmV?d00001 diff --git a/cc65/bin/chrcvt65 b/cc65/bin/chrcvt65 new file mode 100755 index 0000000000000000000000000000000000000000..d0dab42d3f98db26b3fa519115dac3d0e929b47c GIT binary patch literal 36576 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 literal 0 HcmV?d00001 diff --git a/cc65/bin/co65 b/cc65/bin/co65 new file mode 100755 index 0000000000000000000000000000000000000000..1072370a3fcc0204c8062978008cbed5216fec92 GIT binary patch literal 50712 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 DsjBOE literal 0 HcmV?d00001 diff --git a/cc65/bin/grc65 b/cc65/bin/grc65 new file mode 100755 index 0000000000000000000000000000000000000000..e9e9b933b6892127aa73b8dd9c983e860f7dd1b7 GIT binary patch literal 53936 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 literal 0 HcmV?d00001 diff --git a/cc65/bin/ld65 b/cc65/bin/ld65 new file mode 100755 index 0000000000000000000000000000000000000000..2e471d13fcb86673273353732b261bc9d8ee59b4 GIT binary patch literal 183360 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 AwEzGB literal 0 HcmV?d00001 diff --git a/cc65/bin/od65 b/cc65/bin/od65 new file mode 100755 index 0000000000000000000000000000000000000000..6f22e69bb3ec6e4851b158a9e6d245ff92c0a636 GIT binary patch literal 54752 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 OaR$OuM$>@CWdHyTql+E@ literal 0 HcmV?d00001 diff --git a/cc65/bin/sim65 b/cc65/bin/sim65 new file mode 100755 index 0000000000000000000000000000000000000000..f817739fc23452fa78a160a11685a9925b029ace GIT binary patch literal 176616 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