Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- code "{", frame ; Open a stack access context
- incd rrRP
- putd rrRP, rrFRAME
- mov rrFRAME, rrSP
- decd rrFRAME
- next
- code "}", unframe ; close a stack access context
- incd rrFRAME
- mov rrSP, rrFRAME
- getd rrFRAME, rrRP
- decd rrRP
- shl rrTOS, 3
- radd rrSP, rrTOS
- getd rrTOS, rrSP-8 ; recovers TOS from { state
- next
- code "s0", s0 ; push rrFRAME onto stack
- decd rrSP
- putd rrSP, rrTOS
- mov rrTOS, rrFRAME
- next
- code "s1", s1 ; push rrFRAME plus one cell
- decd rrSP
- putd rrSP, rrTOS
- mov rrTOS, rrFRAME
- incd rrTOS
- next
- code "s2", s2 ; push rrFRAME plus two cells
- decd rrSP
- putd rrSP, rrTOS
- mov rrTOS, rrFRAME
- add rrTOS, 16
- next
- code "s3", s3 ; push rrFRAME plus three cells
- decd rrSP
- putd rrSP, rrTOS
- mov rrTOS, rrFRAME
- add rrTOS, 24
- next
- code "s4", s4 ; push rrFRAME plus four cells
- decd rrSP
- putd rrSP, rrTOS
- mov rrTOS, rrFRAME
- add rrTOS, 32
- next
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement