2011-11-22 21 views
17

Tôi biết câu hỏi này là câu hỏi rất quan trọng nhưng tôi biết có một số chuyên gia mã c64 ở đây. Vì vậy, đây là câu hỏi của tôi.Làm thế nào để vô hiệu hóa màn hình trong Commodore 64?

Khi tôi cố tắt màn hình bằng cách sử dụng thủ thuật $ d011, đường viền trên/dưới cũng mở ra. Tôi muốn làm điều đó mà không cần mở các đường viền trên/dưới. Có thể không?

+7

+1 cho commodore 64 – PeeHaa

+0

Ah, hệ thống đưa tôi đến hiện tại. Cảm ơn bạn Commodore! –

Trả lời

13

Ồ, câu hỏi c64. Tốt đẹp. :) Tôi có một mẫu trong kho lưu trữ mã của tôi. Bạn cần phải thực hiện thủ thuật $ d011 ở đầu màn hình, chứ không phải ở phần cuối.

Đây là mã nguồn 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 
+0

Tôi không sử dụng ACME nhưng tôi đã chuyển thành công nó thành trình soạn thảo asm của tôi. Nó hoạt động và chính xác những gì tôi đang tìm kiếm! Cảm ơn rất nhiều Emir. –

Các vấn đề liên quan