Apple 2 double low-resolution

 


Занялся изучением этого режима из-за появления демки. Началось всё с инициализации, которая реализуется на Бейсике:

PRINT CHR$(4)"PR#3" : PRINT CHR$(0); : POKE 49246,0 : GR

А дальше - тупик, многие руководства говорят об использовании двух страниц, но запись в ячейки в $C055 и C054 не дают результата. Как видно, в этом режиме доступно 4 цвета для знакоместа - проблема в том, что задаются только цвета справа. Провозился весь вечер, даже забыл о пиве. Вспомнил, достал бинарь демки и стал изучать. Доступ осуществляется записью в другие адреса

 *=$6000
 !to "hl#0x6000.bin", plain ; set output file and format
 !cpu 6502 ; set processor type

STA $C050;TEXTOFF
STA $C056;HIRESOFF
STA $C052;MIXEDOFF or STA C053;MIXEDON
STA $C00D;80COLON
STA $C05E;SETAN3
ldy #0
ldx #4
lda #0

zz
 tya
 sta $C005; left
p1 sta $400,y
 sta $C004
 eor #$FF
p2 sta $400,y
 iny
 bne zz
 inc p1+2
 inc p2+2
 dex
 bne zz
 rts
результат на скринщоте. Осталось разобраться, где левые и где правые данные:

lda #$99
sta $C005;left
sta $400

lda #$61
sta $C004;left
sta $400

Комментарии не нужны, на картинке итак видно. Осталось написать процедуру построения точки.

Комментарии