diff --git a/mandel.s b/mandel.s index 8bd1a27..6be37d2 100644 --- a/mandel.s +++ b/mandel.s @@ -296,6 +296,7 @@ viewport_zoom: .byte 7 .byte 5 .byte 7 + .byte 7 viewport_ox: .dword ($00000000 & $3fffffff) << 2 @@ -303,6 +304,7 @@ viewport_ox: .dword ($ff110000 & $3fffffff) << 2 .dword ($fe400000 & $3fffffff) << 2 .dword ($fe3b0000 & $3fffffff) << 2 + .dword $fd220000 viewport_oy: .dword ($00000000 & $3fffffff) << 2 @@ -310,6 +312,7 @@ viewport_oy: .dword ($ffbe0000 & $3fffffff) << 2 .dword ($00000000 & $3fffffff) << 2 .dword ($fffe0000 & $3fffffff) << 2 + .dword $ff000000 ; 2 + 9 * byte cycles .macro add bytes, dest, arg1, arg2 @@ -1426,6 +1429,8 @@ number_keys: beq four cpy #KEY_5 beq five + cpy #KEY_6 + beq six jmp skip_char one: @@ -1442,6 +1447,9 @@ four: jmp load_key_viewport five: ldx #4 + jmp load_key_viewport +six: + ldx #5 ; fall through load_key_viewport: jsr load_viewport diff --git a/readme.md b/readme.md index 881890a..2c9efc1 100644 --- a/readme.md +++ b/readme.md @@ -18,7 +18,7 @@ Enjoy! I'll probably work on this off and on for the next few weeks until I've g ## Current state -Basic rendering is functional, with interactive zoom/pan (+/-/arrows) and 5 preset viewports via the number keys. +Basic rendering is functional, with interactive zoom/pan (+/-/arrows) and 6 preset viewports via the number keys. The 16-bit signed integer multiplication takes two 16-bit inputs and emits one 32-bit output in the zero page, using the Atari OS ROM's floating point registers as workspaces. Inputs are clobbered.