mirror of
https://github.com/cc65/cc65.git
synced 2024-08-20 09:29:12 +00:00
44 lines
625 B
ArmAsm
44 lines
625 B
ArmAsm
;
|
|
; Stefan Haubenthal, Jul 10 2003
|
|
;
|
|
; C64DTV detection by
|
|
; Marco van den Heuvel, 2010-01-28
|
|
;
|
|
; unsigned char get_ostype(void)
|
|
;
|
|
; $AA US
|
|
; $64 PET-64
|
|
; $43 SX-64
|
|
; $03 EU_NEW
|
|
; $00 EU_OLD
|
|
; $FF C64DTV
|
|
;
|
|
|
|
.export _get_ostype
|
|
|
|
.proc _get_ostype
|
|
|
|
ldx #0 ; Clear high byte
|
|
|
|
ldy #1
|
|
sty $d03f
|
|
ldy $d040
|
|
cpy $d000
|
|
bne @c64dtv
|
|
inc $d000
|
|
cpy $d040
|
|
beq @c64dtv
|
|
|
|
; Normal C64
|
|
|
|
lda $ff80
|
|
rts
|
|
|
|
; C64 DTV
|
|
|
|
@c64dtv:
|
|
stx $d03f
|
|
lda #$ff
|
|
rts
|
|
.endproc
|