added nufli bmp

This commit is contained in:
AArt1256 2025-11-16 00:55:16 +03:00
parent bec0c6ac45
commit 02cec7acfe
28 changed files with 247 additions and 21 deletions

View file

@ -3,7 +3,7 @@ MEMORY
ZPRAM: start = $2, size = $fe; ZPRAM: start = $2, size = $fe;
ZPRAM2: start = $2, size = $fe; ZPRAM2: start = $2, size = $fe;
INSTALLRAM: start = $17fe, size = $e802, file = "../build/install-c64.prg"; INSTALLRAM: start = $17fe, size = $e802, file = "../build/install-c64.prg";
RESIDENTRAM: start = $16fe, size = $e902, file = "../build/loader-c64.prg"; RESIDENTRAM: start = $efe, size = $f102, file = "../build/loader-c64.prg";
TRANSIENTRAM: start = $3ffe, size = $c002, file = "../build/transient-c64.prg"; TRANSIENTRAM: start = $3ffe, size = $c002, file = "../build/transient-c64.prg";
} }

View file

@ -30,7 +30,7 @@ NULL 000000 000000 000000 00001
RODATA 000000 000000 000000 00001 RODATA 000000 000000 000000 00001
ZEROPAGE 000000 000000 000000 00001 ZEROPAGE 000000 000000 000000 00001
DISKIO_ZP 000002 000006 000005 00001 DISKIO_ZP 000002 000006 000005 00001
DISKIO 0016FE 0017DF 0000E2 00001 DISKIO 000EFE 000FDF 0000E2 00001
DISKIO_INSTALL 0017FE 003352 001B55 00001 DISKIO_INSTALL 0017FE 003352 001B55 00001
@ -81,7 +81,7 @@ install 001800 LA loadaddrhi 000003 LZ
loadaddrlo 000002 RLZ loader_zp_first 000002 EZ loadaddrlo 000002 RLZ loader_zp_first 000002 EZ
loader_zp_last 000006 EZ loadfile41 0005BA LA loader_zp_last 000006 EZ loadfile41 0005BA LA
loadfile71 0004E1 LA loadfile81 000596 LA loadfile71 0004E1 LA loadfile81 000596 LA
loadraw 001700 LA onemhz71 0000DF LZ loadraw 000F00 LA onemhz71 0000DF LZ
sertoraw41 000216 LA setbv2b41 0002AD LA sertoraw41 000216 LA setbv2b41 0002AD LA
status_DEVICE_INCOMPATIBLE 0000FB EZ status_DEVICE_NOT_PRESENT 0000FE EZ status_DEVICE_INCOMPATIBLE 0000FB EZ status_DEVICE_NOT_PRESENT 0000FE EZ
status_FILE_NOT_FOUND 0000FF EZ status_GENERIC_KERNAL_ERROR 0000FD EZ status_FILE_NOT_FOUND 0000FF EZ status_GENERIC_KERNAL_ERROR 0000FD EZ
@ -145,7 +145,7 @@ loadfile41 0005BA LA idxloop71 00065C LA
BLOCKBUFFER71 000700 EA cmdfdfix3 000702 REA BLOCKBUFFER71 000700 EA cmdfdfix3 000702 REA
cmdfdfix4 000704 REA dcodinit81 00074C LA cmdfdfix4 000704 REA dcodinit81 00074C LA
DRVCODEND81 0007A0 EA DIRTRACKS81 0007A0 EA DRVCODEND81 0007A0 EA DIRTRACKS81 0007A0 EA
BLOCKBUFFER81 000B00 EA loadraw 001700 LA BLOCKBUFFER81 000B00 EA loadraw 000F00 LA
install 001800 LA CUSTOMRECEIVE81 001FD7 EA install 001800 LA CUSTOMRECEIVE81 001FD7 EA

Binary file not shown.

View file

@ -1,5 +1,5 @@
; repository version 194, built on Sat, 15 Nov 2025 23:14:57 +0300 for project "loader" using ; repository version 194, built on Sun, 16 Nov 2025 00:48:53 +0300 for project "loader" using
; make PLATFORM=c64 prg INSTALL=1800 RESIDENT=1700 ZP=02 PROJECT= ; make PLATFORM=c64 prg INSTALL=1800 RESIDENT=0F00 ZP=02 PROJECT=
; configuration ; configuration
config_ALLOW_2_MHZ_ON_C128 = 0 config_ALLOW_2_MHZ_ON_C128 = 0
@ -39,5 +39,5 @@ loader_zp_last = $06
; install $1800-$3353 ; install $1800-$3353
install = $1800 install = $1800
; resident $1700-$17e0 ; resident $0f00-$0fe0
loadraw = $1700 loadraw = $0f00

Binary file not shown.

View file

@ -137,7 +137,7 @@ tellarch:
loader: $(LOADER) loader: $(LOADER)
$(LOADER): $(LOADERCFG) $(LOADER): $(LOADERCFG)
make -C $(LOADER_SRC) EXTCONFIGPATH=../samples/$(NAME) PLATFORM=$(_PLATFORM_) INSTALL=1800 RESIDENT=1700 ZP=02 prg make -C $(LOADER_SRC) EXTCONFIGPATH=../samples/$(NAME) PLATFORM=$(_PLATFORM_) INSTALL=1800 RESIDENT=0F00 ZP=02 prg
assemble: $(ASSEMBLE) assemble: $(ASSEMBLE)
@ -160,10 +160,11 @@ $(DISKIMAGE): $(ASSEMBLE)
$(RM) $@ $(RM) $@
$(CC1541) -n "ys2 intro" -i test \ $(CC1541) -n "ys2 intro" -i test \
-f $(NAME) -w $< \ -f $(NAME) -w $< \
-f "sid" -w sid.bin \ -f "sid" -w use_this_sid.bin \
-f "badguy" -w badguy.zx0.prg \ -f "badguy" -w badguy.zx0.prg \
-f "font" -w font.bin \ -f "font" -w font.bin \
-f "scrmap" -w tilemap.bin.lz \ -f "scrmap" -w tilemap.bin.lz \
-f "intrbmp" -w title_320-prepared.zx0.prg \
$@ $@

View file

@ -1,4 +1,7 @@
zx02/zx02 badguyz.bin badguy.zx0 zx02/zx02 badguyz.bin badguy.zx0
printf "\x00\xe0" > badguy.zx0.prg printf "\x00\x80" > badguy.zx0.prg
cat badguy.zx0 >> badguy.zx0.prg cat badguy.zx0 >> badguy.zx0.prg
python3 aart_lz.py tilemap.bin tilemap.bin.lz python3 aart_lz.py tilemap.bin tilemap.bin.lz
zx02/zx02 title_320-prepared.bin title_320-prepared.zx0
printf "\x00\x80" > title_320-prepared.zx0.prg
cat title_320-prepared.zx0 >> title_320-prepared.zx0.prg

Binary file not shown.

View file

@ -20,6 +20,8 @@ text_ptr: .res 2
aart_lz_buffer := $fd00 aart_lz_buffer := $fd00
.include "lz_zp.asm" .include "lz_zp.asm"
CODE_START_ADDR = $e000
.segment "CODE" .segment "CODE"
ZP=$e0 ZP=$e0
@ -31,11 +33,99 @@ pntr = ZP+7
.org $080d .org $080d
jsr install
copy_start:
sei sei
lda #$35 lda #$35
sta $01 sta $01
lda #>(code_end-CODE_START_ADDR)
sta $ff
lda #<(code_end-CODE_START_ADDR)
sta $fe
lda #<CODE_START_ADDR
sta $fc
lda #>CODE_START_ADDR
sta $fd
lda #<code_start
sta $fa
lda #>code_start
sta $fb
@copy_loop:
ldy #0
lda ($fa), y
sta ($fc), y
inc $fc
bne :+
inc $fd
:
inc $fa
bne :+
inc $fb
:
lda $fe
bne :+
dec $ff
:
dec $fe
lda $fe
ora $ff
bne @copy_loop
lda #$36
sta $01
cli
jsr install
sei
lda #$35
sta $01
jmp CODE_START_ADDR
run_nufli_bmp:
lda #$01
sta $81
lda #$29
sta $80
lda #0
sta $d01a
jsr $a000
cli
jsr $3000
@loop:
bit $d011
bpl @loop
jsr $a003
@loop2:
bit $d011
bmi @loop2
lda #0
sta $d020
sta $d021
jsr $a003
lda $80
bne :+
dec $81
:
dec $80
lda $81
cmp #$ff
beq :+
jmp @loop
:
rts
.res loadraw - *
.incbin "../../build/loader-c64.prg", 2
.res install - *
.incbin "../../build/install-c64.prg", 2
code_start:
.org CODE_START_ADDR
sei
ldx #<fontname ldx #<fontname
ldy #>fontname ldy #>fontname
@ -46,9 +136,9 @@ pntr = ZP+7
ldx #0 ldx #0
: :
lda $e000, x lda $8000, x
sta $d800, x sta $d800, x
lda $e100, x lda $8100, x
sta $d900, x sta $d900, x
inx inx
bne :- bne :-
@ -75,7 +165,7 @@ pntr = ZP+7
lda #0 lda #0
sta ZX0_src sta ZX0_src
lda #$e0 lda #$80
sta ZX0_src+1 sta ZX0_src+1
lda #0 lda #0
sta ZX0_dst sta ZX0_dst
@ -175,8 +265,125 @@ pntr = ZP+7
lda #$1a lda #$1a
sta frame_until sta frame_until
jsr wait_frame_until jsr wait_frame_until
lda #120
sta frame_delay
jsr wait_loop
lda #$0b
sta $d011
sei
ldx #<introname
ldy #>introname
jsr loadraw
lda #0
sta ZX0_src
lda #$80
sta ZX0_src+1
lda #0
sta ZX0_dst
lda #$10
jsr zx02
ldx #<sidname
ldy #>sidname
jsr loadraw
lda #<fake_kernal_irq
sta $fffe
lda #>fake_kernal_irq
sta $ffff
lda #1
sta $d01a
jsr run_nufli_bmp
sei
jsr init_2x
jmp * jmp *
init_2x:
lda #127
sta $dc0d
and $d011
sta $d011
lda $dc0d
lda $dd0d
lda #<irq_music
sta $fffe
lda #>irq_music
sta $ffff
lda #$0b
sta $d011
lda #$00
sta $d012
lda #0
sta $d01a
lda #$63; <(985248/100)
sta $dc04
lda #$26;>(985248/100)
sta $dc05
lda $dc0d
and #$81
sta $dc0d
lda #$40
sta $dc0c
lda #$81
sta $dc0d
@loop:
bit $d011
bpl @loop
@loop2:
bit $d011
bmi @loop2
cli
rts
irq_music:
pha
txa
pha
tya
pha
inc $d020
jsr $a003
dec $d020
pla
tay
pla
tax
pla
jmp $dc0c
fake_kernal_irq:
pha
txa
pha
tya
pha
tsx
lda $0104, x
and #$10
beq :+
jmp ($0314)
:
jmp ($0314) ; fuck you
wait_loop: wait_loop:
loop2: loop2:
lda vbl lda vbl
@ -438,7 +645,8 @@ irq_badguy:
badguy: .byte "badguy",0 badguy: .byte "badguy",0
fontname: .byte "font",0 fontname: .byte "font",0
sidname: .byte "sid", 0
introname: .byte "intrbmp", 0
darmtower_txt: darmtower_txt:
.res (40-26)/2, ' ' .res (40-26)/2, ' '
@ -486,8 +694,22 @@ upload_text:
.include "zx02.asm" .include "zx02.asm"
.include "thcmod_lz.asm" .include "thcmod_lz.asm"
.res loadraw - * .res $ea31-*, $ff
.incbin "../../build/loader-c64.prg", 2 ;asl $d019
pla
tay
pla
tax
pla
rti
.res install - * .res $ea81-*, $ff
.incbin "../../build/install-c64.prg", 2 ;asl $d019
pla
tay
pla
tax
pla
rti
code_end:

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.