From 07910f980b9635499c8d08f201eaa2efdc36baa2 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Thu, 11 Nov 2021 17:01:44 -0500 Subject: [PATCH] logo_demo: more work on it --- demos/logo_demo/Makefile | 3 ++ demos/logo_demo/staggered.s | 82 +++++++++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 demos/logo_demo/staggered.s diff --git a/demos/logo_demo/Makefile b/demos/logo_demo/Makefile index 8b36902d..347ac332 100644 --- a/demos/logo_demo/Makefile +++ b/demos/logo_demo/Makefile @@ -31,6 +31,9 @@ logo_demo.dsk: LOGO3 MUSIC DEMO MAP $(PRODOS) -y logo_demo.dsk -t BIN -a 0xE000 SAVE MAP $(PRODOS) -y logo_demo.dsk -t BIN -a 0x2000 SAVE ./music/mA2E_-_Apple_2_for_Demosplash_2021.pt3 MA2E.PT3 $(PRODOS) -y logo_demo.dsk SAVE -t TXT DEMO +# printf '\xa9\x0d' | dd of=logo_demo.dsk bs=1 seek=9873 count=2 conv=notrunc +# printf '\xea\xea\xea' | dd of=logo_demo.dsk bs=1 seek=9905 count=3 conv=notrunc + #### diff --git a/demos/logo_demo/staggered.s b/demos/logo_demo/staggered.s new file mode 100644 index 00000000..66798c03 --- /dev/null +++ b/demos/logo_demo/staggered.s @@ -0,0 +1,82 @@ +; staggered pattern -- Apple II Hires + + +; D0+ used by HGR routines + +HGR_COLOR = $E4 +HGR_PAGE = $E6 + +GBASL = $26 +GBASH = $27 + +COUNT = $FE +FRAME = $FF + +; soft-switches + +; ROM routines + +HGR2 = $F3D8 ; set hires page2 and clear $4000-$5fff +HGR = $F3E2 ; set hires page1 and clear $2000-$3fff +HPLOT0 = $F457 ; plot at (Y,X), (A) +HCOLOR1 = $F6F0 ; set HGR_COLOR to value in X +COLORTBL = $F6F6 +PLOT = $F800 ; PLOT AT Y,A (A colors output, Y preserved) +NEXTCOL = $F85F ; COLOR=COLOR+3 +SETCOL = $F864 ; COLOR=A +SETGR = $FB40 ; set graphics and clear LO-RES screen +BELL2 = $FBE4 +WAIT = $FCA8 ; delay 1/2(26+27A+5A^2) us + +wires: + + jsr HGR2 + + ; pulse loop horizontal + + lda #$00 + tay + tax + sta GBASL + +outer_loop: + lda #$40 + sta GBASH +inner_loop: + + lda even_lookup,X + sta (GBASL),Y + iny + + lda odd_lookup,X + sta (GBASL),Y + + iny + bne inner_loop + + inc GBASH + + inx + txa + and #$7 + tax + + + lda #$60 + cmp GBASH + bne inner_loop + +; lda #100 + jsr WAIT + + inx + + jmp outer_loop + + + +even_lookup: +.byte $D7,$DD,$F5,$D5, $D5,$D5,$D5,$D5 +odd_lookup: +.byte $AA,$AA,$AA,$AB, $AB,$AE,$BA,$EA +