aboutsummaryrefslogtreecommitdiff
path: root/examples/keyboard_reader.asm
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2015-11-25 18:20:15 +0000
committerDimitri Sokolyuk <demon@dim13.org>2015-11-25 18:20:15 +0000
commit76369877147e77c24e6b56f4a166922959c2f149 (patch)
tree4baf650be4971f0577c4a363629099aeddb5a462 /examples/keyboard_reader.asm
parent4592509f18e44d6302fe3fd7ad69974beb00b749 (diff)
Add examples
Diffstat (limited to 'examples/keyboard_reader.asm')
-rw-r--r--examples/keyboard_reader.asm20
1 files changed, 20 insertions, 0 deletions
diff --git a/examples/keyboard_reader.asm b/examples/keyboard_reader.asm
new file mode 100644
index 0000000..9c7e88f
--- /dev/null
+++ b/examples/keyboard_reader.asm
@@ -0,0 +1,20 @@
+; Reading characters from the keyboard
+; by Markus Persson
+
+#macro nextkey(target) {
+ push(i)
+ set i,[keypointer]
+ add i,0x9000
+ set target,[i]
+ ife target,0
+ jmp end
+
+ set [i],0
+ add [keypointer], 1
+ and [keypointer], 0xf
+:end
+ pop(i)
+}
+
+:keypointer
+dat 0