add fx.hgr.iris

This commit is contained in:
4am 2018-10-29 12:11:57 -04:00
parent 6f07549dd0
commit ce60795f54
5 changed files with 136 additions and 2 deletions

13
res/notes/iris.py Executable file
View File

@ -0,0 +1,13 @@
#!/usr/bin/env python3
import sys
alphabet = 'MNOPQRSTUVWXYZABCDEFGHIJKL'
with open(sys.argv[1]) as f:
lines = f.readlines()
for c in alphabet:
for line, row in zip(lines, range(len(lines))):
for l, col in zip(line, range(len(line))):
if l == c:
print("%s,%s," % (row,col), end=' ')
print("255,255")

24
res/notes/iris.txt Normal file
View File

@ -0,0 +1,24 @@
LKJIHGFEDCBAZZYYYXXXXYYYZZABCDEFGHIJKL
LKJIHGFEDCBAZYYXXXWWWWXXXYYZABCDEFGHIJKL
KJIHGFEDCBAZYXXWWWVVVVWWWXXYZABCDEFGHIJK
JIHGFEDCBAZYXWWVVVUUUUVVVWWXYZABCDEFGHIJ
IHGFEDCBAZYXWVVUUUTTTTUUUVVWXYZABCDEFGHI
HGFEDCBAZYXWVUUTTTSSSSTTTUUVWXYZABCDEFGH
HGFEDCBAZYXWVUTSSSRRRRSSSTUVWXYZABCDEFGH
GFEDCBAZYXWVUTSRRRQQQQRRRSTUVWXYZABCDEFG
GFEDCBAZYXWVUTSRQQPPPPQQRSTUVWXYZABCDEFG
GFEDCBAZYXWVUTSRQPOOOOPQRSTUVWXYZABCDEFG
FEDCBAZYXWVUTSRQPONNNNOPQRSTUVWXYZABCDEF
FEDCBAZYXWVUTSRQPONMMNOPQRSTUVWXYZABCDEF
FEDCBAZYXWVUTSRQPONMMNOPQRSTUVWXYZABCDEF
FEDCBAZYXWVUTSRQPONNNNOPQRSTUVWXYZABCDEF
GFEDCBAZYXWVUTSRQPOOOOPQRSTUVWXYZABCDEFG
GFEDCBAZYXWVUTSRQQPPPPQQRSTUVWXYZABCDEFG
GFEDCBAZYXWVUTSRRRQQQQRRRSTUVWXYZABCDEFG
HGFEDCBAZYXWVUTSSSRRRRSSSTUVWXYZABCDEFGH
HGFEDCBAZYXWVUUTTTSSSSTTTUUVWXYZABCDEFGH
IHGFEDCBAZYXWVVUUUTTTTUUUVVWXYZABCDEFGHI
JIHGFEDCBAZYXWWVVVUUUUVVVWWXYZABCDEFGHIJ
KJIHGFEDCBAZYXXWWWVVVVWWWXXYZABCDEFGHIJK
LKJIHGFEDCBAZYYXXXWWWWXXXYYZABCDEFGHIJKL
LKJIHGFEDCBAZZYYYXXXXYYYZZABCDEFGHIJKL

View File

@ -1 +1 @@
# # slideshow of favorite title screens # DUNG.BEETLES MR.ROBOT NIBBLER SNAKE.BYTE DAVIDS.MAGIC CRAZY.MAZY SPYS.DEMISE WAVY.NAVY DIG.DUG PAPERBOY TUBEWAY PRINCEUNP LOST.TOMB MOON.PATROL DROL HERO MONTEZUMA SWASHBUCKLER POOYAN TAPPER GOONIES PLASMANIA PITFALL.II ALCAZAR SABOTAGE FROGGER GORGON CONAN NIGHT.MISSION DINO.EGGS FALCONS BRUCE.LEE BCS.QUEST JOUST [eof]
# # slideshow of favorite title screens # DUNG.BEETLES MR.ROBOT MOON.PATROL HERO DROL MONTEZUMA DAVIDS.MAGIC CRAZY.MAZY SPYS.DEMISE WAVY.NAVY DIG.DUG PAPERBOY TUBEWAY PRINCEUNP LOST.TOMB NIBBLER SNAKE.BYTE SWASHBUCKLER POOYAN TAPPER GOONIES PLASMANIA PITFALL.II ALCAZAR SABOTAGE FROGGER GORGON CONAN NIGHT.MISSION DINO.EGGS FALCONS BRUCE.LEE BCS.QUEST JOUST [eof]

View File

@ -212,7 +212,7 @@ HGRLoad
jsr AddToPath
jsr LoadFile
!word gPathname
jsr SpiralHGR;DiagonalHGR;InterlockingVerticalHGR;FizzleHGR;InterlockingHorizontalHGR;
jsr IrisHGR;SpiralHGR;DiagonalHGR;InterlockingVerticalHGR;FizzleHGR;InterlockingHorizontalHGR;
jmp WaitOnScreenshot
DHGRLoad
@ -329,6 +329,7 @@ kAttractModeConfFile
!source "src/fx.hgr.fizzle.a"
!source "src/fx.hgr.spiral.a"
!source "src/fx.hgr.diagonal.a"
!source "src/fx.hgr.iris.a"
!source "src/fx.hgr.interlockingvertical.a"
!source "src/fx.hgr.interlockinghorizontal.a"
!source "src/fx.dhgr.fizzle.a"

96
src/fx.hgr.iris.a Normal file
View File

@ -0,0 +1,96 @@
!zone {
round = $F0
block = $F1
IrisHGR
lda #$00
sta round
@outerloop
lda round
asl
tax
lda @map,x
sta $fe
lda @map+1,x
sta $ff
lda #$00
sta block
@innerloop
ldy block
lda ($fe),y
bmi @nextround
tax
iny
lda ($fe),y
tay
txa
jsr HGRBlockCopy
inc block
inc block
bne @innerloop ; always branches
@nextround
lda #$40
jsr WaitForKeyWithTimeout
bmi @exit
inc round
lda round
cmp #27
bne @outerloop
@exit rts
@map
!word @round1
!word @round2
!word @round3
!word @round4
!word @round5
!word @round6
!word @round7
!word @round8
!word @round9
!word @round10
!word @round11
!word @round12
!word @round13
!word @round14
!word @round15
!word @round16
!word @round17
!word @round18
!word @round19
!word @round20
!word @round21
!word @round22
!word @round23
!word @round24
!word @round25
!word @round26
!word @round27
@round1 !byte 11,19, 11,20, 12,19, 12,20, 255
@round2 !byte 10,18, 10,19, 10,20, 10,21, 11,18, 11,21, 12,18, 12,21, 13,18, 13,19, 13,20, 13,21, 255
@round3 !byte 9,18, 9,19, 9,20, 9,21, 10,17, 10,22, 11,17, 11,22, 12,17, 12,22, 13,17, 13,22, 14,18, 14,19, 14,20, 14,21, 255
@round4 !byte 8,18, 8,19, 8,20, 8,21, 9,17, 9,22, 10,16, 10,23, 11,16, 11,23, 12,16, 12,23, 13,16, 13,23, 14,17, 14,22, 15,18, 15,19, 15,20, 15,21, 255
@round5 !byte 7,18, 7,19, 7,20, 7,21, 8,16, 8,17, 8,22, 8,23, 9,16, 9,23, 10,15, 10,24, 11,15, 11,24, 12,15, 12,24, 13,15, 13,24, 14,16, 14,23, 15,16, 15,17, 15,22, 15,23, 16,18, 16,19, 16,20, 16,21, 255
@round6 !byte 6,18, 6,19, 6,20, 6,21, 7,15, 7,16, 7,17, 7,22, 7,23, 7,24, 8,15, 8,24, 9,15, 9,24, 10,14, 10,25, 11,14, 11,25, 12,14, 12,25, 13,14, 13,25, 14,15, 14,24, 15,15, 15,24, 16,15, 16,16, 16,17, 16,22, 16,23, 16,24, 17,18, 17,19, 17,20, 17,21, 255
@round7 !byte 5,18, 5,19, 5,20, 5,21, 6,15, 6,16, 6,17, 6,22, 6,23, 6,24, 7,14, 7,25, 8,14, 8,25, 9,14, 9,25, 10,13, 10,26, 11,13, 11,26, 12,13, 12,26, 13,13, 13,26, 14,14, 14,25, 15,14, 15,25, 16,14, 16,25, 17,15, 17,16, 17,17, 17,22, 17,23, 17,24, 18,18, 18,19, 18,20, 18,21, 255
@round8 !byte 4,18, 4,19, 4,20, 4,21, 5,15, 5,16, 5,17, 5,22, 5,23, 5,24, 6,14, 6,25, 7,13, 7,26, 8,13, 8,26, 9,13, 9,26, 10,12, 10,27, 11,12, 11,27, 12,12, 12,27, 13,12, 13,27, 14,13, 14,26, 15,13, 15,26, 16,13, 16,26, 17,14, 17,25, 18,15, 18,16, 18,17, 18,22, 18,23, 18,24, 19,18, 19,19, 19,20, 19,21, 255
@round9 !byte 3,18, 3,19, 3,20, 3,21, 4,15, 4,16, 4,17, 4,22, 4,23, 4,24, 5,13, 5,14, 5,25, 5,26, 6,13, 6,26, 7,12, 7,27, 8,12, 8,27, 9,12, 9,27, 10,11, 10,28, 11,11, 11,28, 12,11, 12,28, 13,11, 13,28, 14,12, 14,27, 15,12, 15,27, 16,12, 16,27, 17,13, 17,26, 18,13, 18,14, 18,25, 18,26, 19,15, 19,16, 19,17, 19,22, 19,23, 19,24, 20,18, 20,19, 20,20, 20,21, 255
@round10 !byte 2,18, 2,19, 2,20, 2,21, 3,15, 3,16, 3,17, 3,22, 3,23, 3,24, 4,13, 4,14, 4,25, 4,26, 5,12, 5,27, 6,12, 6,27, 7,11, 7,28, 8,11, 8,28, 9,11, 9,28, 10,10, 10,29, 11,10, 11,29, 12,10, 12,29, 13,10, 13,29, 14,11, 14,28, 15,11, 15,28, 16,11, 16,28, 17,12, 17,27, 18,12, 18,27, 19,13, 19,14, 19,25, 19,26, 20,15, 20,16, 20,17, 20,22, 20,23, 20,24, 21,18, 21,19, 21,20, 21,21, 255
@round11 !byte 1,18, 1,19, 1,20, 1,21, 2,15, 2,16, 2,17, 2,22, 2,23, 2,24, 3,13, 3,14, 3,25, 3,26, 4,12, 4,27, 5,11, 5,28, 6,11, 6,28, 7,10, 7,29, 8,10, 8,29, 9,10, 9,29, 10,9, 10,30, 11,9, 11,30, 12,9, 12,30, 13,9, 13,30, 14,10, 14,29, 15,10, 15,29, 16,10, 16,29, 17,11, 17,28, 18,11, 18,28, 19,12, 19,27, 20,13, 20,14, 20,25, 20,26, 21,15, 21,16, 21,17, 21,22, 21,23, 21,24, 22,18, 22,19, 22,20, 22,21, 255
@round12 !byte 0,18, 0,19, 0,20, 0,21, 1,15, 1,16, 1,17, 1,22, 1,23, 1,24, 2,13, 2,14, 2,25, 2,26, 3,12, 3,27, 4,11, 4,28, 5,10, 5,29, 6,10, 6,29, 7,9, 7,30, 8,9, 8,30, 9,9, 9,30, 10,8, 10,31, 11,8, 11,31, 12,8, 12,31, 13,8, 13,31, 14,9, 14,30, 15,9, 15,30, 16,9, 16,30, 17,10, 17,29, 18,10, 18,29, 19,11, 19,28, 20,12, 20,27, 21,13, 21,14, 21,25, 21,26, 22,15, 22,16, 22,17, 22,22, 22,23, 22,24, 23,18, 23,19, 23,20, 23,21, 255
@round13 !byte 0,15, 0,16, 0,17, 0,22, 0,23, 0,24, 1,13, 1,14, 1,25, 1,26, 2,12, 2,27, 3,11, 3,28, 4,10, 4,29, 5,9, 5,30, 6,9, 6,30, 7,8, 7,31, 8,8, 8,31, 9,8, 9,31, 10,7, 10,32, 11,7, 11,32, 12,7, 12,32, 13,7, 13,32, 14,8, 14,31, 15,8, 15,31, 16,8, 16,31, 17,9, 17,30, 18,9, 18,30, 19,10, 19,29, 20,11, 20,28, 21,12, 21,27, 22,13, 22,14, 22,25, 22,26, 23,15, 23,16, 23,17, 23,22, 23,23, 23,24, 255
@round14 !byte 0,13, 0,14, 0,25, 0,26, 1,12, 1,27, 2,11, 2,28, 3,10, 3,29, 4,9, 4,30, 5,8, 5,31, 6,8, 6,31, 7,7, 7,32, 8,7, 8,32, 9,7, 9,32, 10,6, 10,33, 11,6, 11,33, 12,6, 12,33, 13,6, 13,33, 14,7, 14,32, 15,7, 15,32, 16,7, 16,32, 17,8, 17,31, 18,8, 18,31, 19,9, 19,30, 20,10, 20,29, 21,11, 21,28, 22,12, 22,27, 23,13, 23,14, 23,25, 23,26, 255
@round15 !byte 0,12, 0,27, 1,11, 1,28, 2,10, 2,29, 3,9, 3,30, 4,8, 4,31, 5,7, 5,32, 6,7, 6,32, 7,6, 7,33, 8,6, 8,33, 9,6, 9,33, 10,5, 10,34, 11,5, 11,34, 12,5, 12,34, 13,5, 13,34, 14,6, 14,33, 15,6, 15,33, 16,6, 16,33, 17,7, 17,32, 18,7, 18,32, 19,8, 19,31, 20,9, 20,30, 21,10, 21,29, 22,11, 22,28, 23,12, 23,27, 255
@round16 !byte 0,11, 0,28, 1,10, 1,29, 2,9, 2,30, 3,8, 3,31, 4,7, 4,32, 5,6, 5,33, 6,6, 6,33, 7,5, 7,34, 8,5, 8,34, 9,5, 9,34, 10,4, 10,35, 11,4, 11,35, 12,4, 12,35, 13,4, 13,35, 14,5, 14,34, 15,5, 15,34, 16,5, 16,34, 17,6, 17,33, 18,6, 18,33, 19,7, 19,32, 20,8, 20,31, 21,9, 21,30, 22,10, 22,29, 23,11, 23,28, 255
@round17 !byte 0,10, 0,29, 1,9, 1,30, 2,8, 2,31, 3,7, 3,32, 4,6, 4,33, 5,5, 5,34, 6,5, 6,34, 7,4, 7,35, 8,4, 8,35, 9,4, 9,35, 10,3, 10,36, 11,3, 11,36, 12,3, 12,36, 13,3, 13,36, 14,4, 14,35, 15,4, 15,35, 16,4, 16,35, 17,5, 17,34, 18,5, 18,34, 19,6, 19,33, 20,7, 20,32, 21,8, 21,31, 22,9, 22,30, 23,10, 23,29, 255
@round18 !byte 0,9, 0,30, 1,8, 1,31, 2,7, 2,32, 3,6, 3,33, 4,5, 4,34, 5,4, 5,35, 6,4, 6,35, 7,3, 7,36, 8,3, 8,36, 9,3, 9,36, 10,2, 10,37, 11,2, 11,37, 12,2, 12,37, 13,2, 13,37, 14,3, 14,36, 15,3, 15,36, 16,3, 16,36, 17,4, 17,35, 18,4, 18,35, 19,5, 19,34, 20,6, 20,33, 21,7, 21,32, 22,8, 22,31, 23,9, 23,30, 255
@round19 !byte 0,8, 0,31, 1,7, 1,32, 2,6, 2,33, 3,5, 3,34, 4,4, 4,35, 5,3, 5,36, 6,3, 6,36, 7,2, 7,37, 8,2, 8,37, 9,2, 9,37, 10,1, 10,38, 11,1, 11,38, 12,1, 12,38, 13,1, 13,38, 14,2, 14,37, 15,2, 15,37, 16,2, 16,37, 17,3, 17,36, 18,3, 18,36, 19,4, 19,35, 20,5, 20,34, 21,6, 21,33, 22,7, 22,32, 23,8, 23,31, 255
@round20 !byte 0,7, 0,32, 1,6, 1,33, 2,5, 2,34, 3,4, 3,35, 4,3, 4,36, 5,2, 5,37, 6,2, 6,37, 7,1, 7,38, 8,1, 8,38, 9,1, 9,38, 10,0, 10,39, 11,0, 11,39, 12,0, 12,39, 13,0, 13,39, 14,1, 14,38, 15,1, 15,38, 16,1, 16,38, 17,2, 17,37, 18,2, 18,37, 19,3, 19,36, 20,4, 20,35, 21,5, 21,34, 22,6, 22,33, 23,7, 23,32, 255
@round21 !byte 0,6, 0,33, 1,5, 1,34, 2,4, 2,35, 3,3, 3,36, 4,2, 4,37, 5,1, 5,38, 6,1, 6,38, 7,0, 7,39, 8,0, 8,39, 9,0, 9,39, 14,0, 14,39, 15,0, 15,39, 16,0, 16,39, 17,1, 17,38, 18,1, 18,38, 19,2, 19,37, 20,3, 20,36, 21,4, 21,35, 22,5, 22,34, 23,6, 23,33, 255
@round22 !byte 0,5, 0,34, 1,4, 1,35, 2,3, 2,36, 3,2, 3,37, 4,1, 4,38, 5,0, 5,39, 6,0, 6,39, 17,0, 17,39, 18,0, 18,39, 19,1, 19,38, 20,2, 20,37, 21,3, 21,36, 22,4, 22,35, 23,5, 23,34, 255
@round23 !byte 0,4, 0,35, 1,3, 1,36, 2,2, 2,37, 3,1, 3,38, 4,0, 4,39, 19,0, 19,39, 20,1, 20,38, 21,2, 21,37, 22,3, 22,36, 23,4, 23,35, 255
@round24 !byte 0,3, 0,36, 1,2, 1,37, 2,1, 2,38, 3,0, 3,39, 20,0, 20,39, 21,1, 21,38, 22,2, 22,37, 23,3, 23,36, 255
@round25 !byte 0,2, 0,37, 1,1, 1,38, 2,0, 2,39, 21,0, 21,39, 22,1, 22,38, 23,2, 23,37, 255
@round26 !byte 0,1, 0,38, 1,0, 1,39, 22,0, 22,39, 23,1, 23,38, 255
@round27 !byte 0,0, 0,39, 23,0, 23,39, 255
}