mirror of
https://github.com/a2-4am/4cade.git
synced 2024-11-26 17:49:43 +00:00
refactor iris around quadratic spiral
This commit is contained in:
parent
05fd4fce1e
commit
eefc1bb45b
2
Makefile
2
Makefile
@ -22,7 +22,6 @@ CADIUS=cadius
|
||||
asm: md
|
||||
$(ACME) -r build/4cade.lst src/4cade.a
|
||||
$(ACME) src/fx/fx.hgr.diagonal.a
|
||||
$(ACME) src/fx/fx.hgr.iris.a
|
||||
$(ACME) src/fx/fx.hgr.interlock.ud.a
|
||||
$(ACME) src/fx/fx.hgr.interlock.lr.a
|
||||
$(ACME) src/fx/fx.hgr.spiral.a
|
||||
@ -46,6 +45,7 @@ asm: md
|
||||
$(ACME) src/fx/fx.hgr.sunrise.a
|
||||
$(ACME) src/fx/fx.hgr.radial.a
|
||||
$(ACME) src/fx/fx.hgr.split.ud.intro.a
|
||||
$(ACME) src/fx/fx.hgr.iris.a
|
||||
|
||||
dsk: md asm
|
||||
$(CADIUS) CREATEVOLUME build/"$(DISK)" "${VOLUME}" 32766KB >>build/log
|
||||
|
@ -1 +1 @@
|
||||
#
# transition effects for HGR slideshows
#
SPLIT.UD.INTRO
RADIAL
SUNRISE
DIAGONAL
CHECKERBOARD
HALF.FIZZLE
CORNER.CIRCLE
BAR.DISSOLVE
STAGGERWHITE.LR
DIAMOND
ONESQUARE
TWOPASS.LR
CRYSTAL
HALF.MOSAIC
STAGGER.LR
FOURSQUARE
STAGGER.UD
INTERLOCK.LR
BLOCK.MOSAIC
IRIS
FIZZLE
STAGGERWHITE.UD
INTERLOCK.UD
BLOCK.FIZZLE
SPIRAL
[eof]
|
||||
#
# transition effects for HGR slideshows
#
IRIS
SPLIT.UD.INTRO
RADIAL
SUNRISE
DIAGONAL
CHECKERBOARD
HALF.FIZZLE
CORNER.CIRCLE
BAR.DISSOLVE
STAGGERWHITE.LR
DIAMOND
ONESQUARE
TWOPASS.LR
CRYSTAL
HALF.MOSAIC
STAGGER.LR
FOURSQUARE
STAGGER.UD
INTERLOCK.LR
BLOCK.MOSAIC
FIZZLE
STAGGERWHITE.UD
INTERLOCK.UD
BLOCK.FIZZLE
SPIRAL
[eof]
|
@ -2,7 +2,6 @@ DIAGONAL=Type(06),AuxType(6000),Access(C3)
|
||||
FIZZLE=Type(06),AuxType(6000),Access(C3)
|
||||
INTERLOCK.UD=Type(06),AuxType(6000),Access(C3)
|
||||
INTERLOCK.LR=Type(06),AuxType(6000),Access(C3)
|
||||
IRIS=Type(06),AuxType(6000),Access(C3)
|
||||
SPIRAL=Type(06),AuxType(6000),Access(C3)
|
||||
BAR.DISSOLVE=Type(06),AuxType(6000),Access(C3)
|
||||
BLOCK.FIZZLE=Type(06),AuxType(6000),Access(C3)
|
||||
@ -23,3 +22,4 @@ CORNER.CIRCLE=Type(06),AuxType(6000),Access(C3)
|
||||
SUNRISE=Type(06),AuxType(6000),Access(C3)
|
||||
RADIAL=Type(06),AuxType(6000),Access(C3)
|
||||
SPLIT.UD.INTRO=Type(06),AuxType(6000),Access(C3)
|
||||
IRIS=Type(06),AuxType(6000),Access(C3)
|
||||
|
21
res/notes/radialspiral.py
Executable file
21
res/notes/radialspiral.py
Executable file
@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from math import sqrt, sin, cos, pi
|
||||
|
||||
def f(t):
|
||||
t = float(t)
|
||||
return (0.6*sqrt(t)*cos(2*pi*sqrt(t)), sqrt(t)*sin(2*pi*sqrt(t)))
|
||||
|
||||
coords = []
|
||||
for i in range(20000):
|
||||
any = False
|
||||
a, b = f(float(i)/10.0)
|
||||
x = round(20+a)
|
||||
y = round(24+b)
|
||||
if x < 0 or x > 39 or y < 0 or y > 47 or (x,y) in coords:
|
||||
continue
|
||||
coords.append((x,y))
|
||||
|
||||
with open("../../src/fx/fx.hgr.iris.data.a", "w") as f:
|
||||
for x, y in coords:
|
||||
f.write(" !byte %s,%s\n" % (y,x))
|
@ -2,99 +2,38 @@
|
||||
!to "build/FX/IRIS",plain
|
||||
*=$6000
|
||||
|
||||
round = $FC
|
||||
block = $FD
|
||||
coord = $FE
|
||||
|
||||
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 ; exit condition
|
||||
lda #<@coords
|
||||
sta coord
|
||||
lda #>@coords
|
||||
sta coord+1
|
||||
ldy #0
|
||||
@loop
|
||||
lda (coord),y
|
||||
tax
|
||||
iny
|
||||
lda ($fe),y
|
||||
lda (coord),y
|
||||
tay
|
||||
txa
|
||||
jsr HGRBlockCopy
|
||||
inc block
|
||||
inc block
|
||||
bne @innerloop ; always branches (only exit condition is the BMI above)
|
||||
@nextround
|
||||
lda #$40
|
||||
jsr HGRHalfBlockCopy
|
||||
lda #$6
|
||||
jsr WaitForKeyWithTimeout
|
||||
bmi @exit
|
||||
inc round
|
||||
lda round
|
||||
cmp #27
|
||||
bne @outerloop
|
||||
inc coord
|
||||
bne +
|
||||
inc coord+1
|
||||
+ inc coord
|
||||
bne +
|
||||
inc coord+1
|
||||
+ ldy #$00
|
||||
lda ($FE),y
|
||||
bpl @loop
|
||||
@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
|
||||
@coords
|
||||
!source "src/fx/fx.hgr.iris.data.a"
|
||||
!byte $80
|
||||
|
||||
!source "src/wait.a"
|
||||
!source "src/fx/fx.hgr.common.a"
|
||||
|
1920
src/fx/fx.hgr.iris.data.a
Normal file
1920
src/fx/fx.hgr.iris.data.a
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user