mirror of
https://github.com/cc65/cc65.git
synced 2025-02-24 09:29:07 +00:00
Cleanups for Creativision.
This commit is contained in:
parent
0b2a699b46
commit
a08f905224
@ -12,6 +12,7 @@ SEGMENTS {
|
|||||||
VECTORS: load = ROM, run = RAM, type = rw, define = yes;
|
VECTORS: load = ROM, run = RAM, type = rw, define = yes;
|
||||||
DATA: load = ROM, run = RAM, type = rw, define = yes, start = $0204;
|
DATA: load = ROM, run = RAM, type = rw, define = yes, start = $0204;
|
||||||
BSS: load = RAM, type = bss, define = yes;
|
BSS: load = RAM, type = bss, define = yes;
|
||||||
|
ONCE: load = ROM, type = ro, optional = yes;
|
||||||
CODE: load = ROM, type = ro;
|
CODE: load = ROM, type = ro;
|
||||||
INIT: load = ROM, type = ro;
|
INIT: load = ROM, type = ro;
|
||||||
RODATA: load = ROM, type = ro;
|
RODATA: load = ROM, type = ro;
|
||||||
|
@ -2,14 +2,14 @@
|
|||||||
;** _scrsize.s
|
;** _scrsize.s
|
||||||
;*
|
;*
|
||||||
|
|
||||||
.export screensize
|
.export screensize
|
||||||
|
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
.proc screensize
|
.proc screensize
|
||||||
|
|
||||||
ldx #SCREEN_COLS
|
ldx #SCREEN_COLS
|
||||||
ldy #SCREEN_ROWS
|
ldy #SCREEN_ROWS
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.endproc
|
.endproc
|
||||||
|
@ -1,62 +1,62 @@
|
|||||||
; Boxchars
|
; Boxchars
|
||||||
|
|
||||||
boxchars:
|
boxchars:
|
||||||
; Vertical Line
|
; Vertical Line
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
.byte $18
|
.byte $18
|
||||||
|
|
||||||
; Horizontal Line
|
; Horizontal Line
|
||||||
.byte 0
|
.byte $00
|
||||||
.byte 0
|
.byte $00
|
||||||
.byte 0
|
.byte $00
|
||||||
.byte $ff
|
.byte $FF
|
||||||
.byte 0
|
.byte $00
|
||||||
.byte 0
|
.byte $00
|
||||||
.byte 0
|
.byte $00
|
||||||
.byte 0
|
.byte $00
|
||||||
|
|
||||||
; Top Left
|
|
||||||
.byte 0
|
|
||||||
.byte 0
|
|
||||||
.byte 0
|
|
||||||
.byte $1f
|
|
||||||
.byte $18
|
|
||||||
.byte $18
|
|
||||||
.byte $18
|
|
||||||
.byte $18
|
|
||||||
|
|
||||||
; Top Right
|
|
||||||
.byte 0
|
|
||||||
.byte 0
|
|
||||||
.byte 0
|
|
||||||
.byte $F8
|
|
||||||
.byte $18
|
|
||||||
.byte $18
|
|
||||||
.byte $18
|
|
||||||
.byte $18
|
|
||||||
|
|
||||||
; Bottom Left
|
; Top Left
|
||||||
.byte $18
|
.byte $00
|
||||||
.byte $18
|
.byte $00
|
||||||
.byte $18
|
.byte $00
|
||||||
.byte $1F
|
.byte $1F
|
||||||
.byte 0
|
.byte $18
|
||||||
.byte 0
|
.byte $18
|
||||||
.byte 0
|
.byte $18
|
||||||
.byte 0
|
.byte $18
|
||||||
|
|
||||||
; Bottom Right
|
; Top Right
|
||||||
.byte $18
|
.byte $00
|
||||||
.byte $18
|
.byte $00
|
||||||
.byte $18
|
.byte $00
|
||||||
.byte $F8
|
.byte $F8
|
||||||
.byte 0
|
.byte $18
|
||||||
.byte 0
|
.byte $18
|
||||||
.byte 0
|
.byte $18
|
||||||
.byte 0
|
.byte $18
|
||||||
|
|
||||||
|
; Bottom Left
|
||||||
|
.byte $18
|
||||||
|
.byte $18
|
||||||
|
.byte $18
|
||||||
|
.byte $1F
|
||||||
|
.byte $00
|
||||||
|
.byte $00
|
||||||
|
.byte $00
|
||||||
|
.byte $00
|
||||||
|
|
||||||
|
; Bottom Right
|
||||||
|
.byte $18
|
||||||
|
.byte $18
|
||||||
|
.byte $18
|
||||||
|
.byte $F8
|
||||||
|
.byte $00
|
||||||
|
.byte $00
|
||||||
|
.byte $00
|
||||||
|
.byte $00
|
||||||
|
@ -3,27 +3,24 @@
|
|||||||
;* void cclear (unsigned char length);
|
;* void cclear (unsigned char length);
|
||||||
;*
|
;*
|
||||||
|
|
||||||
.export _cclearxy, _cclear
|
.export _cclearxy, _cclear
|
||||||
.import popa, _gotoxy, cputdirect
|
.import popa, _gotoxy, cputdirect
|
||||||
.importzp tmp1
|
.importzp tmp1
|
||||||
|
|
||||||
_cclearxy:
|
|
||||||
pha ; Save length
|
|
||||||
jsr popa ; get Y
|
|
||||||
jsr _gotoxy
|
|
||||||
pla
|
|
||||||
|
|
||||||
_cclear:
|
|
||||||
cmp #0 ; Zero length?
|
|
||||||
beq L2
|
|
||||||
sta tmp1
|
|
||||||
|
|
||||||
L1:
|
|
||||||
lda #$20 ; Space
|
|
||||||
jsr cputdirect
|
|
||||||
dec tmp1
|
|
||||||
bne L1
|
|
||||||
|
|
||||||
L2: rts
|
|
||||||
|
|
||||||
|
_cclearxy:
|
||||||
|
pha ; Save length
|
||||||
|
jsr popa ; get Y
|
||||||
|
jsr _gotoxy
|
||||||
|
pla
|
||||||
|
|
||||||
|
_cclear:
|
||||||
|
cmp #0 ; Zero length?
|
||||||
|
beq L2
|
||||||
|
sta tmp1
|
||||||
|
|
||||||
|
L1: lda #$20 ; Space
|
||||||
|
jsr cputdirect
|
||||||
|
dec tmp1
|
||||||
|
bne L1
|
||||||
|
|
||||||
|
L2: rts
|
||||||
|
@ -1,17 +1,14 @@
|
|||||||
;* cgetc
|
;* cgetc
|
||||||
|
|
||||||
.export _cgetc
|
.export _cgetc
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
_cgetc:
|
_cgetc:
|
||||||
lda #$80
|
lda #$80
|
||||||
|
|
||||||
L1:
|
L1: bit ZP_KEYBOARD
|
||||||
bit ZP_KEYBOARD
|
bpl L1
|
||||||
bpl L1
|
|
||||||
|
lda ZP_KEYBOARD
|
||||||
lda ZP_KEYBOARD
|
and #$7F
|
||||||
and #$7f
|
rts
|
||||||
rts
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
.importzp tmp1
|
.importzp tmp1
|
||||||
|
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
_chlinexy:
|
_chlinexy:
|
||||||
pha ; Save the length
|
pha ; Save the length
|
||||||
jsr popa ; Get y
|
jsr popa ; Get y
|
||||||
|
@ -4,38 +4,38 @@
|
|||||||
;* NB: All screen functions assume Graphics Mode 1 in a default configuration.
|
;* NB: All screen functions assume Graphics Mode 1 in a default configuration.
|
||||||
;* Therefore, this is hard coded to use $1000-$12FF as screen VRAM.
|
;* Therefore, this is hard coded to use $1000-$12FF as screen VRAM.
|
||||||
|
|
||||||
.export _clrscr
|
.export _clrscr
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
_clrscr:
|
_clrscr:
|
||||||
|
|
||||||
sei ; Disable interrupts. Default INT handler reads VDP_STATUS
|
sei ; Disable interrupts. Default INT handler reads VDP_STATUS
|
||||||
; and would lose any setup done here.
|
; and would lose any setup done here.
|
||||||
|
|
||||||
lda #$00 ; VRAM offset low
|
lda #$00 ; VRAM offset low
|
||||||
sta VDP_CONTROL_W
|
sta VDP_CONTROL_W
|
||||||
|
|
||||||
lda #$50 ; VRAM offset high ($10 OR $40)
|
lda #$50 ; VRAM offset high ($10 OR $40)
|
||||||
sta VDP_CONTROL_W
|
sta VDP_CONTROL_W
|
||||||
|
|
||||||
lda #$C0 ; Space from ROM setup
|
lda #$C0 ; Space from ROM setup
|
||||||
|
|
||||||
ldx #0
|
ldx #0
|
||||||
ldy #3
|
ldy #3
|
||||||
|
|
||||||
L1: sta VDP_DATA_W
|
L1: sta VDP_DATA_W
|
||||||
inx
|
inx
|
||||||
bne L1
|
bne L1
|
||||||
dey
|
dey
|
||||||
bne L1
|
bne L1
|
||||||
|
|
||||||
cli ; Let interrupts go again
|
cli ; Let interrupts go again
|
||||||
|
|
||||||
lda #0
|
lda #0
|
||||||
sta CURSOR_X
|
sta CURSOR_X
|
||||||
sta CURSOR_Y
|
sta CURSOR_Y
|
||||||
sta <SCREEN_PTR
|
sta <SCREEN_PTR
|
||||||
lda #$10
|
lda #$10
|
||||||
sta >SCREEN_PTR
|
sta >SCREEN_PTR
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
@ -4,10 +4,10 @@
|
|||||||
;* unsigned char __fastcall__ bordercolor (unsigned char color);
|
;* unsigned char __fastcall__ bordercolor (unsigned char color);
|
||||||
;*
|
;*
|
||||||
|
|
||||||
.export _textcolor, _bgcolor, _bordercolor
|
.export _textcolor, _bgcolor, _bordercolor
|
||||||
.import return0
|
.import return0
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
_bordercolor = return0;
|
_bordercolor = return0;
|
||||||
_textcolor = return0;
|
_textcolor = return0;
|
||||||
_bgcolor = return0;
|
_bgcolor = return0;
|
||||||
|
@ -29,13 +29,13 @@ _cputcxy:
|
|||||||
|
|
||||||
; Plot a character - also used as internal function
|
; Plot a character - also used as internal function
|
||||||
|
|
||||||
_cputc: cmp #$0d ; CR?
|
_cputc: cmp #$0D ; CR?
|
||||||
bne L1
|
bne L1
|
||||||
lda #0
|
lda #0
|
||||||
sta CURSOR_X
|
sta CURSOR_X
|
||||||
beq plot ; Recalculate pointers
|
beq plot ; Recalculate pointers
|
||||||
|
|
||||||
L1: cmp #$0a ; LF?
|
L1: cmp #$0A ; LF?
|
||||||
beq newline ; Recalculate pointers
|
beq newline ; Recalculate pointers
|
||||||
|
|
||||||
; Printable char of some sort
|
; Printable char of some sort
|
||||||
@ -82,19 +82,19 @@ IS_UPPER:
|
|||||||
pha
|
pha
|
||||||
lda SCREEN_PTR
|
lda SCREEN_PTR
|
||||||
sei
|
sei
|
||||||
sta VDP_CONTROL_W
|
sta VDP_CONTROL_W
|
||||||
lda SCREEN_PTR+1
|
lda SCREEN_PTR+1
|
||||||
ora #$40
|
ora #$40
|
||||||
sta VDP_CONTROL_W
|
sta VDP_CONTROL_W
|
||||||
pla
|
pla
|
||||||
clc
|
clc
|
||||||
adc #160
|
adc #160
|
||||||
sta VDP_DATA_W
|
sta VDP_DATA_W
|
||||||
cli
|
cli
|
||||||
|
|
||||||
BAD_CHAR:
|
BAD_CHAR:
|
||||||
jmp plot
|
jmp plot
|
||||||
|
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
; Initialize the conio subsystem. Code goes into the INIT segment, which may
|
; Initialize the conio subsystem. Code goes into the INIT segment, which may
|
||||||
; be reused after startup.
|
; be reused after startup.
|
||||||
@ -102,24 +102,24 @@ BAD_CHAR:
|
|||||||
.segment "INIT"
|
.segment "INIT"
|
||||||
|
|
||||||
initconio:
|
initconio:
|
||||||
lda #$0
|
lda #$0
|
||||||
sta SCREEN_PTR
|
sta SCREEN_PTR
|
||||||
lda #$10
|
lda #$10
|
||||||
sta SCREEN_PTR+1
|
sta SCREEN_PTR+1
|
||||||
|
|
||||||
; Copy box characters to slot
|
; Copy box characters to slot
|
||||||
sei
|
sei
|
||||||
lda #08
|
lda #08
|
||||||
sta VDP_CONTROL_W
|
sta VDP_CONTROL_W
|
||||||
lda #$46
|
lda #$46
|
||||||
sta VDP_CONTROL_W
|
sta VDP_CONTROL_W
|
||||||
ldx #0
|
ldx #0
|
||||||
LL:
|
|
||||||
lda boxchars,x
|
|
||||||
sta VDP_DATA_W
|
|
||||||
inx
|
|
||||||
cpx #48
|
|
||||||
bne LL
|
|
||||||
|
|
||||||
cli
|
LL: lda boxchars,x
|
||||||
jmp plot
|
sta VDP_DATA_W
|
||||||
|
inx
|
||||||
|
cpx #48
|
||||||
|
bne LL
|
||||||
|
|
||||||
|
cli
|
||||||
|
jmp plot
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
.proc _gotox
|
.proc _gotox
|
||||||
|
|
||||||
sta CURSOR_X ; Set new position
|
sta CURSOR_X ; Set new position
|
||||||
tay
|
tay
|
||||||
ldx CURSOR_Y
|
ldx CURSOR_Y
|
||||||
jmp setcursor ; Set the cursor to the new position
|
jmp setcursor ; Set the cursor to the new position
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
|
|
||||||
.proc _gotoxy
|
.proc _gotoxy
|
||||||
|
|
||||||
sta CURSOR_Y ; Set Y
|
sta CURSOR_Y ; Set Y
|
||||||
jsr popa ; Get X
|
jsr popa ; Get X
|
||||||
sta CURSOR_X ; Set X
|
sta CURSOR_X ; Set X
|
||||||
tay
|
tay
|
||||||
ldx CURSOR_Y
|
ldx CURSOR_Y
|
||||||
jmp setcursor ; Set the cursor position
|
jmp setcursor ; Set the cursor position
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
;*
|
;*
|
||||||
;* Creativision Joystick Function
|
;* Creativision Joystick Function
|
||||||
;*
|
;*
|
||||||
;* unsigned char __fastcall__ joystate(unsigned char joy);
|
;* unsigned char __fastcall__ joystate(unsigned char joy);
|
||||||
;*
|
;*
|
||||||
;* JOY_1 -> Return Left Joystick direction
|
;* JOY_1 -> Return Left Joystick direction
|
||||||
@ -12,47 +12,47 @@
|
|||||||
|
|
||||||
.export _joystate
|
.export _joystate
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
_joystate:
|
_joystate:
|
||||||
cmp #1 ; Left Direction
|
cmp #1 ; Left Direction
|
||||||
bne l1
|
bne l1
|
||||||
|
|
||||||
lda $11
|
lda $11
|
||||||
beq l5
|
beq l5
|
||||||
and #$f
|
and #$0F
|
||||||
lsr a
|
lsr a
|
||||||
tax
|
tax
|
||||||
inx
|
inx
|
||||||
txa
|
txa
|
||||||
rts
|
rts
|
||||||
|
|
||||||
l1: cmp #2 ; Right Direction
|
l1: cmp #2 ; Right Direction
|
||||||
bne l2
|
bne l2
|
||||||
|
|
||||||
lda $13
|
lda $13
|
||||||
beq l5
|
beq l5
|
||||||
and #$f
|
and #$0F
|
||||||
lsr a
|
lsr a
|
||||||
tax
|
tax
|
||||||
inx
|
inx
|
||||||
txa
|
txa
|
||||||
rts
|
rts
|
||||||
|
|
||||||
l2: cmp #3 ; Left Buttons
|
l2: cmp #3 ; Left Buttons
|
||||||
bne l3
|
bne l3
|
||||||
|
|
||||||
lda $16
|
lda $16
|
||||||
beq l5
|
beq l5
|
||||||
and #$f
|
and #$0F
|
||||||
rts
|
rts
|
||||||
|
|
||||||
l3: cmp #4
|
l3: cmp #4
|
||||||
bne l4
|
bne l4
|
||||||
|
|
||||||
lda $17
|
lda $17
|
||||||
beq l5
|
beq l5
|
||||||
and #$f
|
and #$0F
|
||||||
rts
|
rts
|
||||||
|
|
||||||
l4: lda #0
|
l4: lda #0
|
||||||
l5: rts
|
l5: rts
|
||||||
|
@ -5,5 +5,5 @@
|
|||||||
.export joy_libref, tgi_libref
|
.export joy_libref, tgi_libref
|
||||||
.import _exit
|
.import _exit
|
||||||
|
|
||||||
joy_libref := _exit
|
joy_libref := _exit
|
||||||
tgi_libref := _exit
|
tgi_libref := _exit
|
||||||
|
@ -20,5 +20,3 @@
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,40 +3,37 @@
|
|||||||
; void __fastcall__ bios_playsound( void *b, unsigned char c);
|
; void __fastcall__ bios_playsound( void *b, unsigned char c);
|
||||||
; void psg_silence( void );
|
; void psg_silence( void );
|
||||||
|
|
||||||
.export _psg_outb, _psg_silence, _psg_delay
|
.export _psg_outb, _psg_silence, _psg_delay
|
||||||
.export _bios_playsound
|
.export _bios_playsound
|
||||||
.import popa
|
.import popa
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
_psg_outb:
|
_psg_outb:
|
||||||
|
|
||||||
;* Let BIOS output the value
|
;* Let BIOS output the value
|
||||||
jmp $FE77
|
jmp $FE77
|
||||||
|
|
||||||
_psg_silence:
|
_psg_silence:
|
||||||
|
|
||||||
jmp $FE54
|
jmp $FE54
|
||||||
|
|
||||||
|
|
||||||
_psg_delay:
|
_psg_delay:
|
||||||
|
|
||||||
tay
|
tay
|
||||||
l1:
|
l1: lda #200
|
||||||
lda #200
|
l2: sbc #1
|
||||||
l2:
|
bne l2
|
||||||
sbc #1
|
|
||||||
bne l2
|
lda #200
|
||||||
|
l3: sbc #1
|
||||||
lda #200
|
bne l3
|
||||||
l3:
|
|
||||||
sbc #1
|
dey
|
||||||
bne l3
|
bne l1
|
||||||
|
|
||||||
dey
|
rts
|
||||||
bne l1
|
|
||||||
|
|
||||||
rts
|
|
||||||
|
|
||||||
|
|
||||||
;* Creativision Sound Player
|
;* Creativision Sound Player
|
||||||
;*
|
;*
|
||||||
@ -46,23 +43,21 @@ l3:
|
|||||||
|
|
||||||
_bios_playsound:
|
_bios_playsound:
|
||||||
|
|
||||||
pha ; Save Length Byte
|
pha ; Save Length Byte
|
||||||
|
sei
|
||||||
sei
|
|
||||||
|
lda #$D5 ; BIOS volume table low
|
||||||
lda #$D5 ; BIOS volume table low
|
sta $4
|
||||||
sta $4
|
lda #$FC ; BIOS volume table high
|
||||||
lda #$FC ; BIOS volume table high
|
sta $5
|
||||||
sta $5
|
|
||||||
|
jsr popa ; Get Sound table pointer low
|
||||||
jsr popa ; Get Sound table pointer low
|
sta $0
|
||||||
sta $0
|
jsr popa ; Get Sound table pointer high
|
||||||
jsr popa ; Get Sound table pointer high
|
sta $1
|
||||||
sta $1
|
|
||||||
|
pla
|
||||||
pla
|
tay ; Put length in Y
|
||||||
tay ; Put length in Y
|
dey
|
||||||
dey
|
php
|
||||||
php
|
jmp $FBED ; Let BIOS do it's thing
|
||||||
jmp $fbed ; Let BIOS do it's thing
|
|
||||||
|
|
||||||
|
@ -34,6 +34,3 @@ utsdata:
|
|||||||
|
|
||||||
; machine
|
; machine
|
||||||
.asciiz "CREATIVISION"
|
.asciiz "CREATIVISION"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
;
|
;
|
||||||
|
|
||||||
.export _wherex
|
.export _wherex
|
||||||
|
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
.proc _wherex
|
.proc _wherex
|
||||||
@ -15,5 +14,3 @@
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
;
|
;
|
||||||
|
|
||||||
.export _wherey
|
.export _wherey
|
||||||
|
|
||||||
.include "creativision.inc"
|
.include "creativision.inc"
|
||||||
|
|
||||||
.proc _wherey
|
.proc _wherey
|
||||||
@ -15,5 +14,3 @@
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
|
|
||||||
|
@ -259,6 +259,10 @@ static void SetSys (const char* Sys)
|
|||||||
CBMSystem ("__PET__");
|
CBMSystem ("__PET__");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case TGT_BBC:
|
||||||
|
NewSymbol ("__BBC__", 1);
|
||||||
|
break;
|
||||||
|
|
||||||
case TGT_APPLE2:
|
case TGT_APPLE2:
|
||||||
NewSymbol ("__APPLE2__", 1);
|
NewSymbol ("__APPLE2__", 1);
|
||||||
break;
|
break;
|
||||||
@ -278,14 +282,6 @@ static void SetSys (const char* Sys)
|
|||||||
NewSymbol ("__GEOS_CBM__", 1);
|
NewSymbol ("__GEOS_CBM__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_ATMOS:
|
|
||||||
NewSymbol ("__ATMOS__", 1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case TGT_BBC:
|
|
||||||
NewSymbol ("__BBC__", 1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case TGT_CREATIVISION:
|
case TGT_CREATIVISION:
|
||||||
NewSymbol ("__CREATIVISION__", 1);
|
NewSymbol ("__CREATIVISION__", 1);
|
||||||
break;
|
break;
|
||||||
@ -299,14 +295,22 @@ static void SetSys (const char* Sys)
|
|||||||
NewSymbol ("__LUNIX__", 1);
|
NewSymbol ("__LUNIX__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_LYNX:
|
case TGT_ATMOS:
|
||||||
NewSymbol ("__LYNX__", 1);
|
NewSymbol ("__ATMOS__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_NES:
|
case TGT_NES:
|
||||||
NewSymbol ("__NES__", 1);
|
NewSymbol ("__NES__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case TGT_SUPERVISION:
|
||||||
|
NewSymbol ("__SUPERVISION__", 1);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case TGT_LYNX:
|
||||||
|
NewSymbol ("__LYNX__", 1);
|
||||||
|
break;
|
||||||
|
|
||||||
case TGT_SIM6502:
|
case TGT_SIM6502:
|
||||||
NewSymbol ("__SIM6502__", 1);
|
NewSymbol ("__SIM6502__", 1);
|
||||||
break;
|
break;
|
||||||
@ -323,10 +327,6 @@ static void SetSys (const char* Sys)
|
|||||||
NewSymbol ("__PCE__", 1);
|
NewSymbol ("__PCE__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_SUPERVISION:
|
|
||||||
NewSymbol ("__SUPERVISION__", 1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
AbEnd ("Invalid target name: `%s'", Sys);
|
AbEnd ("Invalid target name: `%s'", Sys);
|
||||||
|
|
||||||
|
@ -211,6 +211,10 @@ static void SetSys (const char* Sys)
|
|||||||
cbmsys ("__PET__");
|
cbmsys ("__PET__");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case TGT_BBC:
|
||||||
|
DefineNumericMacro ("__BBC__", 1);
|
||||||
|
break;
|
||||||
|
|
||||||
case TGT_APPLE2:
|
case TGT_APPLE2:
|
||||||
DefineNumericMacro ("__APPLE2__", 1);
|
DefineNumericMacro ("__APPLE2__", 1);
|
||||||
break;
|
break;
|
||||||
@ -230,14 +234,6 @@ static void SetSys (const char* Sys)
|
|||||||
DefineNumericMacro ("__GEOS_CBM__", 1);
|
DefineNumericMacro ("__GEOS_CBM__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_ATMOS:
|
|
||||||
DefineNumericMacro ("__ATMOS__", 1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case TGT_BBC:
|
|
||||||
DefineNumericMacro ("__BBC__", 1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case TGT_CREATIVISION:
|
case TGT_CREATIVISION:
|
||||||
DefineNumericMacro ("__CREATIVISION__", 1);
|
DefineNumericMacro ("__CREATIVISION__", 1);
|
||||||
break;
|
break;
|
||||||
@ -251,14 +247,22 @@ static void SetSys (const char* Sys)
|
|||||||
DefineNumericMacro ("__LUNIX__", 1);
|
DefineNumericMacro ("__LUNIX__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_LYNX:
|
case TGT_ATMOS:
|
||||||
DefineNumericMacro ("__LYNX__", 1);
|
DefineNumericMacro ("__ATMOS__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_NES:
|
case TGT_NES:
|
||||||
DefineNumericMacro ("__NES__", 1);
|
DefineNumericMacro ("__NES__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case TGT_SUPERVISION:
|
||||||
|
DefineNumericMacro ("__SUPERVISION__", 1);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case TGT_LYNX:
|
||||||
|
DefineNumericMacro ("__LYNX__", 1);
|
||||||
|
break;
|
||||||
|
|
||||||
case TGT_SIM6502:
|
case TGT_SIM6502:
|
||||||
DefineNumericMacro ("__SIM6502__", 1);
|
DefineNumericMacro ("__SIM6502__", 1);
|
||||||
break;
|
break;
|
||||||
@ -275,10 +279,6 @@ static void SetSys (const char* Sys)
|
|||||||
DefineNumericMacro ("__PCE__", 1);
|
DefineNumericMacro ("__PCE__", 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TGT_SUPERVISION:
|
|
||||||
DefineNumericMacro ("__SUPERVISION__", 1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
AbEnd ("Unknown target system type %d", Target);
|
AbEnd ("Unknown target system type %d", Target);
|
||||||
}
|
}
|
||||||
|
@ -142,38 +142,38 @@ struct TargetEntry {
|
|||||||
** Allows multiple entries for one target id (target name aliases).
|
** Allows multiple entries for one target id (target name aliases).
|
||||||
*/
|
*/
|
||||||
static const TargetEntry TargetMap[] = {
|
static const TargetEntry TargetMap[] = {
|
||||||
{ "apple2", TGT_APPLE2 },
|
{ "apple2", TGT_APPLE2 },
|
||||||
{ "apple2enh", TGT_APPLE2ENH },
|
{ "apple2enh", TGT_APPLE2ENH },
|
||||||
{ "atari", TGT_ATARI },
|
{ "atari", TGT_ATARI },
|
||||||
{ "atari2600", TGT_ATARI2600 },
|
{ "atari2600", TGT_ATARI2600 },
|
||||||
{ "atari5200", TGT_ATARI5200 },
|
{ "atari5200", TGT_ATARI5200 },
|
||||||
{ "atarixl", TGT_ATARIXL },
|
{ "atarixl", TGT_ATARIXL },
|
||||||
{ "atmos", TGT_ATMOS },
|
{ "atmos", TGT_ATMOS },
|
||||||
{ "bbc", TGT_BBC },
|
{ "bbc", TGT_BBC },
|
||||||
{ "c128", TGT_C128 },
|
{ "c128", TGT_C128 },
|
||||||
{ "c16", TGT_C16 },
|
{ "c16", TGT_C16 },
|
||||||
{ "c64", TGT_C64 },
|
{ "c64", TGT_C64 },
|
||||||
{ "c65", TGT_C65 },
|
{ "c65", TGT_C65 },
|
||||||
{ "cbm510", TGT_CBM510 },
|
{ "cbm510", TGT_CBM510 },
|
||||||
{ "cbm610", TGT_CBM610 },
|
{ "cbm610", TGT_CBM610 },
|
||||||
{ "creativision", TGT_CREATIVISION},
|
{ "creativision", TGT_CREATIVISION },
|
||||||
{ "gamate", TGT_GAMATE },
|
{ "gamate", TGT_GAMATE },
|
||||||
{ "geos", TGT_GEOS_CBM },
|
{ "geos", TGT_GEOS_CBM },
|
||||||
{ "geos-apple", TGT_GEOS_APPLE },
|
{ "geos-apple", TGT_GEOS_APPLE },
|
||||||
{ "geos-cbm", TGT_GEOS_CBM },
|
{ "geos-cbm", TGT_GEOS_CBM },
|
||||||
{ "lunix", TGT_LUNIX },
|
{ "lunix", TGT_LUNIX },
|
||||||
{ "lynx", TGT_LYNX },
|
{ "lynx", TGT_LYNX },
|
||||||
{ "module", TGT_MODULE },
|
{ "module", TGT_MODULE },
|
||||||
{ "nes", TGT_NES },
|
{ "nes", TGT_NES },
|
||||||
{ "none", TGT_NONE },
|
{ "none", TGT_NONE },
|
||||||
{ "osic1p", TGT_OSIC1P },
|
{ "osic1p", TGT_OSIC1P },
|
||||||
{ "pce", TGT_PCENGINE },
|
{ "pce", TGT_PCENGINE },
|
||||||
{ "pet", TGT_PET },
|
{ "pet", TGT_PET },
|
||||||
{ "plus4", TGT_PLUS4 },
|
{ "plus4", TGT_PLUS4 },
|
||||||
{ "sim6502", TGT_SIM6502 },
|
{ "sim6502", TGT_SIM6502 },
|
||||||
{ "sim65c02", TGT_SIM65C02 },
|
{ "sim65c02", TGT_SIM65C02 },
|
||||||
{ "supervision", TGT_SUPERVISION },
|
{ "supervision", TGT_SUPERVISION },
|
||||||
{ "vic20", TGT_VIC20 },
|
{ "vic20", TGT_VIC20 },
|
||||||
};
|
};
|
||||||
#define MAP_ENTRY_COUNT (sizeof (TargetMap) / sizeof (TargetMap[0]))
|
#define MAP_ENTRY_COUNT (sizeof (TargetMap) / sizeof (TargetMap[0]))
|
||||||
|
|
||||||
@ -195,13 +195,12 @@ static const TargetProperties PropertyTable[TGT_COUNT] = {
|
|||||||
{ "cbm610", CPU_6502, BINFMT_BINARY, CTPET },
|
{ "cbm610", CPU_6502, BINFMT_BINARY, CTPET },
|
||||||
{ "osic1p", CPU_6502, BINFMT_BINARY, CTOSI },
|
{ "osic1p", CPU_6502, BINFMT_BINARY, CTOSI },
|
||||||
{ "pet", CPU_6502, BINFMT_BINARY, CTPET },
|
{ "pet", CPU_6502, BINFMT_BINARY, CTPET },
|
||||||
|
{ "bbc", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
{ "apple2", CPU_6502, BINFMT_BINARY, CTNone },
|
{ "apple2", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
{ "apple2enh", CPU_65C02, BINFMT_BINARY, CTNone },
|
{ "apple2enh", CPU_65C02, BINFMT_BINARY, CTNone },
|
||||||
{ "atmos", CPU_6502, BINFMT_BINARY, CTNone },
|
{ "geos-cbm", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
{ "bbc", CPU_6502, BINFMT_BINARY, CTNone },
|
|
||||||
{ "creativision", CPU_6502, BINFMT_BINARY, CTNone },
|
{ "creativision", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
{ "geos-apple", CPU_65C02, BINFMT_BINARY, CTNone },
|
{ "geos-apple", CPU_65C02, BINFMT_BINARY, CTNone },
|
||||||
{ "geos-cbm", CPU_6502, BINFMT_BINARY, CTNone },
|
|
||||||
{ "lunix", CPU_6502, BINFMT_O65, CTNone },
|
{ "lunix", CPU_6502, BINFMT_O65, CTNone },
|
||||||
{ "atmos", CPU_6502, BINFMT_BINARY, CTNone },
|
{ "atmos", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
{ "nes", CPU_6502, BINFMT_BINARY, CTNone },
|
{ "nes", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
@ -211,7 +210,6 @@ static const TargetProperties PropertyTable[TGT_COUNT] = {
|
|||||||
{ "sim65c02", CPU_65C02, BINFMT_BINARY, CTNone },
|
{ "sim65c02", CPU_65C02, BINFMT_BINARY, CTNone },
|
||||||
{ "pce", CPU_HUC6280, BINFMT_BINARY, CTNone },
|
{ "pce", CPU_HUC6280, BINFMT_BINARY, CTNone },
|
||||||
{ "gamate", CPU_6502, BINFMT_BINARY, CTNone },
|
{ "gamate", CPU_6502, BINFMT_BINARY, CTNone },
|
||||||
{ "supervision", CPU_65SC02, BINFMT_BINARY, CTNone },
|
|
||||||
{ "c65", CPU_4510, BINFMT_BINARY, CTPET },
|
{ "c65", CPU_4510, BINFMT_BINARY, CTPET },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -67,21 +67,21 @@ typedef enum {
|
|||||||
TGT_CBM610,
|
TGT_CBM610,
|
||||||
TGT_OSIC1P,
|
TGT_OSIC1P,
|
||||||
TGT_PET,
|
TGT_PET,
|
||||||
|
TGT_BBC,
|
||||||
TGT_APPLE2,
|
TGT_APPLE2,
|
||||||
TGT_APPLE2ENH,
|
TGT_APPLE2ENH,
|
||||||
TGT_ATMOS,
|
TGT_GEOS_CBM,
|
||||||
TGT_BBC,
|
|
||||||
TGT_CREATIVISION,
|
TGT_CREATIVISION,
|
||||||
TGT_GEOS_APPLE,
|
TGT_GEOS_APPLE,
|
||||||
TGT_GEOS_CBM,
|
|
||||||
TGT_LUNIX,
|
TGT_LUNIX,
|
||||||
TGT_LYNX,
|
TGT_ATMOS,
|
||||||
TGT_NES,
|
TGT_NES,
|
||||||
|
TGT_SUPERVISION,
|
||||||
|
TGT_LYNX,
|
||||||
TGT_SIM6502,
|
TGT_SIM6502,
|
||||||
TGT_SIM65C02,
|
TGT_SIM65C02,
|
||||||
TGT_PCENGINE,
|
TGT_PCENGINE,
|
||||||
TGT_GAMATE,
|
TGT_GAMATE,
|
||||||
TGT_SUPERVISION,
|
|
||||||
TGT_C65,
|
TGT_C65,
|
||||||
TGT_COUNT /* Number of target systems */
|
TGT_COUNT /* Number of target systems */
|
||||||
} target_t;
|
} target_t;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user