]> git.sur5r.net Git - cc65/commitdiff
fixed problem with I/O access on C64
authorizydorst <izydorst@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Fri, 15 Aug 2003 22:17:13 +0000 (22:17 +0000)
committerizydorst <izydorst@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Fri, 15 Aug 2003 22:17:13 +0000 (22:17 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@2333 b7a2c559-68d2-44c3-8de9-860c34a00d81

libsrc/geos/system/get_ostype.s

index 30c0cc6b6c6557b68dc7c8e666566100faf5b8bb..6124ca9dbf99c7b92339987c31a690f0a70ff3d9 100644 (file)
@@ -38,6 +38,10 @@ only40:          ldx #0                      ; COLUMNS40
 tvmode:                                        ; PAL/NTSC check here, result in A
             php
            sei                         ; disable interrupts
+           lda CPU_DATA                ; this is for C64
+           pha
+           lda #IO_IN                  ; enable access to I/O
+           sta CPU_DATA
             bit rasreg
            bpl tvmode                  ; wait for rasterline  127<x<256
            lda #24                     ; (rasterline now >=256!)
@@ -51,6 +55,10 @@ ntsc:            lda #$80                    ; NTSC
 
 modeend:    stx tmp1
            ora tmp1
+           sta tmp1
            ldx #0
+           pla
+           sta CPU_DATA                ; restore memory config
            plp                         ; restore interrupt state
+           lda tmp1
            rts