From a356d68c1c314cddbd987616f12291fc24bebf37 Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Mon, 8 Jan 2018 16:22:46 +0100 Subject: project 9 checkpoint - no more compiler error - but still some bugs: - tiles get stuck - segment error (possibly due to deep copy?) --- projects/09/K/KGame.vm | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 projects/09/K/KGame.vm (limited to 'projects/09/K/KGame.vm') diff --git a/projects/09/K/KGame.vm b/projects/09/K/KGame.vm new file mode 100644 index 0000000..767c14a --- /dev/null +++ b/projects/09/K/KGame.vm @@ -0,0 +1,74 @@ +function KGame.new 0 +push constant 1 +call Memory.alloc 1 +pop pointer 0 +call Board.new 0 +pop this 0 +push this 0 +call Board.draw 1 +pop temp 0 +push pointer 0 +return +function KGame.dispose 0 +push argument 0 +pop pointer 0 +push this 0 +call Board.dispose 1 +pop temp 0 +push pointer 0 +call Memory.deAlloc 1 +pop temp 0 +push constant 0 +return +function KGame.run 3 +push argument 0 +pop pointer 0 +push constant 0 +pop local 0 +push constant 0 +pop local 2 +label WHILE_EXP0 +push local 2 +not +not +if-goto WHILE_END0 +label WHILE_EXP1 +push local 0 +push constant 130 +lt +push local 0 +push constant 133 +gt +or +not +if-goto WHILE_END1 +call Keyboard.keyPressed 0 +pop local 0 +goto WHILE_EXP1 +label WHILE_END1 +push local 0 +push constant 130 +sub +pop local 1 +label WHILE_EXP2 +push local 0 +push constant 0 +eq +not +not +if-goto WHILE_END2 +call Keyboard.keyPressed 0 +pop local 0 +goto WHILE_EXP2 +label WHILE_END2 +push this 0 +push local 1 +call Board.next 2 +pop temp 0 +push this 0 +call Board.draw 1 +pop temp 0 +goto WHILE_EXP0 +label WHILE_END0 +push constant 0 +return -- cgit v1.2.3