Advertisement
Guest User

Game of Life for R16K1S60

a guest
Feb 13th, 2016
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. mov dx,0x0F00
  2. mov bx,0x0000
  3. mov cx,0x0001
  4.  
  5. mov [dx+15],cx
  6. mov [dx+16],cx
  7. mov [dx+17],cx
  8.  
  9. sub dx,64
  10. update:
  11.  
  12. jmp alivecells
  13. donecell:
  14. cmp bx,2
  15. jne killcell
  16. mov ax,[dx]
  17. cmp ax,0x0001
  18. je copycell
  19. add dx,1
  20. cmp dx, 4030
  21. je reset
  22. jmp update
  23.  
  24. alivecells:
  25. mov bx,0
  26. mov ax,[dx-65]
  27. add bx,ax
  28. mov ax,[dx-64]
  29. add bx,ax
  30. mov ax,[dx-63]
  31. add bx,ax
  32. mov ax,[dx+1]
  33. add bx,ax
  34. mov ax,[dx-1]
  35. add bx,ax
  36. mov ax,[dx+63]
  37. add bx,ax
  38. mov ax,[dx+64]
  39. add bx,ax
  40. mov ax,[dx+65]
  41. add bx,ax
  42. jmp donecell
  43.  
  44. relivecell:
  45. mov cx,0x0002
  46. mov [dx-384],cx
  47. add dx,1
  48. cmp dx, 4030
  49. je reset
  50. jmp update
  51.  
  52. reset:
  53. mov dx,0x0F00
  54. sub dx, 64
  55. jmp renewgeneration
  56. renewgendone:
  57. mov dx,0x0F00
  58. sub dx, 64
  59. jmp update
  60.  
  61. killcell:
  62. mov [dx-384],ex
  63. cmp bx,3
  64. je relivecell
  65. add dx,1
  66. cmp dx, 4030
  67. je reset
  68. jmp update
  69.  
  70. copycell:
  71. mov cx,0x0002
  72. mov [dx-384],cx
  73. add dx,1
  74. cmp dx, 4030
  75. je reset
  76. jmp update
  77.  
  78. renewgeneration:
  79. mov ex,0x0000
  80. renewloop:
  81. mov ax, [dx-384]
  82. mov [dx],ex
  83. cmp ax, 0x0002
  84. je setalive
  85. renewreturn:
  86. mov [dx-384],ex
  87. add dx,1
  88. cmp dx, 4030
  89. jne renewloop
  90.  
  91. jmp renewgendone
  92.  
  93. setalive:
  94. mov [dx],0x0001
  95. jmp renewreturn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement