Как отключить экран в Commodore 64?

Я знаю, что этот вопрос очень специфический, но я знаю, что здесь есть некоторые гуру кода на c64. Вот мой вопрос.

Когда я пытаюсь отключить экран с помощью трюка $d011, верхняя / нижняя граница также открывается. Я хочу сделать это без открытия верхней / нижней границы. Является ли это возможным?

1 ответ

Решение

О, вопрос с64. Ницца.:) У меня есть один пример в моем архиве кода. Вам нужно сделать трюк $d011 в начале экрана, а не в конце.

Это исходный код ACME.

    !to "nobadlines.prg",cbm

!macro WAIT .v {
    ldy #.v
    dey
    bne *-1
}

    * = $0801
    !byte $0c, $08, $00, $00, $9e, $32, $30, $36, $31, $00, $00, $00

    * = $080d
    lda #$01
    sta $3fff
    sei
start:
    lda #$30
    cmp $d012
    bne *-3
    lda #$00
    sta $d011
    +WAIT 24
    lda #$0b
    sta $d011
    lda #$31
    cmp $d012
    bne *-3
    lda #$1b
    sta $d011
    +WAIT 8
    bit $ea
    ldx #$00
loop1:
    txa
    sta $d020
    sta $d021
    +WAIT 9
    inx
    cpx #254
    bne loop1
    asl $3fff
    bne start
    inc $3fff
    jmp start
Другие вопросы по тегам