wip
This commit is contained in:
parent
61eb1aaf21
commit
0d086a179c
1 changed files with 68 additions and 40 deletions
108
mandel.s
108
mandel.s
|
@ -1,43 +1,42 @@
|
||||||
; Our zero-page vars
|
; Our zero-page vars
|
||||||
sx = $80 ; i16: screen pixel x
|
ox = $80 ; fixed8.24: center point x
|
||||||
sy = $82 ; i16: screen pixel y
|
oy = $84 ; fixed8.24: center point y
|
||||||
ox = $84 ; fixed4.12: center point x
|
cx = $88 ; fixed8.24: c_x
|
||||||
oy = $86 ; fixed4.12: center point y
|
cy = $8c ; fixed8.24: c_y
|
||||||
cx = $88 ; fixed4.12: c_x
|
|
||||||
cy = $8a ; fixed4.12: c_y
|
|
||||||
zx = $8c ; fixed4.12: z_x
|
|
||||||
zy = $8e ; fixed4.12: z_y
|
|
||||||
|
|
||||||
zx_2 = $90 ; fixed4.12: z_x^2
|
zx = $90 ; fixed8.24: z_x
|
||||||
zy_2 = $92 ; fixed4.12: z_y^2
|
zy = $94 ; fixed8.24: z_y
|
||||||
zx_zy = $94 ; fixed4.12: z_x * z_y
|
zx_2 = $98 ; fixed8.24: z_x^2
|
||||||
dist = $96 ; fixed4.12: z_x^2 + z_y^2
|
zy_2 = $9c ; fixed8.24: z_y^2
|
||||||
|
|
||||||
iter = $a0 ; u8: iteration count
|
zx_zy = $a0 ; fixed8.24: z_x * z_y
|
||||||
|
dist = $a4 ; fixed8.24: z_x^2 + z_y^2
|
||||||
|
sx = $a8 ; i16: screen pixel x
|
||||||
|
sy = $aa ; i16: screen pixel y
|
||||||
|
z_buffer_active = $ac ; boolean: 1 if we triggered the lake, 0 if not
|
||||||
|
z_buffer_start = $ad ; u8: index into z_buffer
|
||||||
|
z_buffer_end = $ae ; u8: index into z_buffer
|
||||||
|
iter = $af ; u8: iteration count
|
||||||
|
|
||||||
zoom = $a1 ; u8: zoom shift level
|
ptr = $b0 ; u16
|
||||||
count_frames = $a2 ; u8
|
pixel_ptr = $b2 ; u16
|
||||||
count_pixels = $a3 ; u8
|
zoom = $b4 ; u8: zoom shift level
|
||||||
total_ms = $a4 ; float48
|
fill_level = $b5 ; u8
|
||||||
total_pixels = $aa ; float48
|
pixel_color = $b6 ; u8
|
||||||
|
pixel_mask = $b7 ; u8
|
||||||
|
pixel_shift = $b8 ; u8
|
||||||
|
pixel_offset = $b9 ; u8
|
||||||
|
palette_offset = $ba ; u8
|
||||||
|
chroma_offset = $bb ; u8
|
||||||
|
palette_ticks = $bc ; u8
|
||||||
|
chroma_ticks = $bd ; u8
|
||||||
|
count_frames = $be ; u8
|
||||||
|
count_pixels = $bf ; u8
|
||||||
|
|
||||||
z_buffer_active = $b0 ; boolean: 1 if we triggered the lake, 0 if not
|
total_pixels = $c0 ; float48
|
||||||
z_buffer_start = $b1 ; u8: index into z_buffer
|
total_ms = $c6 ; float48
|
||||||
z_buffer_end = $b2 ; u8: index into z_buffer
|
temp = $cc ; u16
|
||||||
temp = $b4 ; u16
|
temp2 = $ce ; u16
|
||||||
temp2 = $b6 ; u16
|
|
||||||
pixel_ptr = $b8 ; u16
|
|
||||||
pixel_color = $ba ; u8
|
|
||||||
pixel_mask = $bb ; u8
|
|
||||||
pixel_shift = $bc ; u8
|
|
||||||
pixel_offset = $bd ; u8
|
|
||||||
fill_level = $be ; u8
|
|
||||||
palette_offset = $bf ; u8
|
|
||||||
|
|
||||||
palette_ticks = $c0 ; u8
|
|
||||||
chroma_ticks = $c1 ; u8
|
|
||||||
chroma_offset = $c2 ; u8
|
|
||||||
ptr = $c4 ; u16
|
|
||||||
|
|
||||||
palette_delay = 23
|
palette_delay = 23
|
||||||
chroma_delay = 137
|
chroma_delay = 137
|
||||||
|
@ -884,12 +883,41 @@ next:
|
||||||
; zx_zy = 0
|
; zx_zy = 0
|
||||||
; dist = 0
|
; dist = 0
|
||||||
; iter = 0
|
; iter = 0
|
||||||
|
; lda #00
|
||||||
|
; ldx #(iter - zx + 1)
|
||||||
|
;initloop:
|
||||||
|
; sta zx - 1,x
|
||||||
|
; dex
|
||||||
|
; bne initloop
|
||||||
|
; sta z_buffer_start
|
||||||
|
; sta z_buffer_end
|
||||||
|
|
||||||
lda #00
|
lda #00
|
||||||
ldx #(iter - zx + 1)
|
sta zx
|
||||||
initloop:
|
sta zx + 1
|
||||||
sta zx - 1,x
|
sta zx + 2
|
||||||
dex
|
sta zx + 3
|
||||||
bne initloop
|
sta zy
|
||||||
|
sta zy + 1
|
||||||
|
sta zy + 2
|
||||||
|
sta zy + 3
|
||||||
|
sta zx_2
|
||||||
|
sta zx_2 + 1
|
||||||
|
sta zx_2 + 2
|
||||||
|
sta zx_2 + 3
|
||||||
|
sta zy_2
|
||||||
|
sta zy_2 + 1
|
||||||
|
sta zy_2 + 2
|
||||||
|
sta zy_2 + 3
|
||||||
|
sta zx_zy
|
||||||
|
sta zx_zy + 1
|
||||||
|
sta zx_zy + 2
|
||||||
|
sta zx_zy + 3
|
||||||
|
sta dist
|
||||||
|
sta dist + 1
|
||||||
|
sta dist + 2
|
||||||
|
sta dist + 3
|
||||||
|
sta iter
|
||||||
sta z_buffer_start
|
sta z_buffer_start
|
||||||
sta z_buffer_end
|
sta z_buffer_end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue