Advertisement
KipIngram

Stack Frame Words

Apr 22nd, 2021
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. code "{", frame ; Open a stack access context
  2. incd rrRP
  3. putd rrRP, rrFRAME
  4. mov rrFRAME, rrSP
  5. decd rrFRAME
  6. next
  7.  
  8. code "}", unframe ; close a stack access context
  9. incd rrFRAME
  10. mov rrSP, rrFRAME
  11. getd rrFRAME, rrRP
  12. decd rrRP
  13. shl rrTOS, 3
  14. radd rrSP, rrTOS
  15. getd rrTOS, rrSP-8 ; recovers TOS from { state
  16. next
  17. code "s0", s0 ; push rrFRAME onto stack
  18. decd rrSP
  19. putd rrSP, rrTOS
  20. mov rrTOS, rrFRAME
  21. next
  22.  
  23. code "s1", s1 ; push rrFRAME plus one cell
  24. decd rrSP
  25. putd rrSP, rrTOS
  26. mov rrTOS, rrFRAME
  27. incd rrTOS
  28. next
  29.  
  30. code "s2", s2 ; push rrFRAME plus two cells
  31. decd rrSP
  32. putd rrSP, rrTOS
  33. mov rrTOS, rrFRAME
  34. add rrTOS, 16
  35. next
  36.  
  37. code "s3", s3 ; push rrFRAME plus three cells
  38. decd rrSP
  39. putd rrSP, rrTOS
  40. mov rrTOS, rrFRAME
  41. add rrTOS, 24
  42. next
  43.  
  44. code "s4", s4 ; push rrFRAME plus four cells
  45. decd rrSP
  46. putd rrSP, rrTOS
  47. mov rrTOS, rrFRAME
  48. add rrTOS, 32
  49. next
  50.  
  51.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement