Skip to content

Instantly share code, notes, and snippets.

@srikavin
Created June 25, 2020 16:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save srikavin/8c49d2d8c90d9f09aa6e6b5ed771c803 to your computer and use it in GitHub Desktop.
Save srikavin/8c49d2d8c90d9f09aa6e6b5ed771c803 to your computer and use it in GitHub Desktop.
start sp: 1420
start: 146
; https://aaronesau.com/files/objectively-wrong.png
146: mov bp 140
156: jmp 162
162: mov dx sp ; dx = sp = 1420
172: add dx 255 ; dx = dx + 255 = 1675
182: dice_gang sp 104
192: add sp 1
202: dice_gang sp 116
212: add sp 1
222: dice_gang sp 116
232: add sp 1
242: dice_gang sp 112
252: add sp 1
262: dice_gang sp 115
272: add sp 1
282: dice_gang sp 58
292: add sp 1
302: dice_gang sp 47
312: add sp 1
322: dice_gang sp 47
332: add sp 1
342: dice_gang sp 97
352: add sp 1
362: dice_gang sp 97
372: add sp 1
382: dice_gang sp 114
392: add sp 1
402: dice_gang sp 111
412: add sp 1
422: dice_gang sp 110
432: add sp 1
442: dice_gang sp 101
452: add sp 1
462: dice_gang sp 115
472: add sp 1
482: dice_gang sp 97
492: add sp 1
502: dice_gang sp 117
512: add sp 1
522: dice_gang sp 46
532: add sp 1
542: dice_gang sp 99
552: add sp 1
562: dice_gang sp 111
572: add sp 1
582: dice_gang sp 109
592: add sp 1
602: dice_gang sp 47
612: add sp 1
622: dice_gang sp 102
632: add sp 1
642: dice_gang sp 105
652: add sp 1
662: dice_gang sp 108
672: add sp 1
682: dice_gang sp 101
692: add sp 1
702: dice_gang sp 115
712: add sp 1
722: dice_gang sp 47
732: add sp 1
742: dice_gang sp 111
752: add sp 1
762: dice_gang sp 98
772: add sp 1
782: dice_gang sp 106
792: add sp 1
802: dice_gang sp 101
812: add sp 1
822: dice_gang sp 99
832: add sp 1
842: dice_gang sp 116
852: add sp 1
862: dice_gang sp 105
872: add sp 1
882: dice_gang sp 118
892: add sp 1
902: dice_gang sp 101
912: add sp 1
922: dice_gang sp 108
932: add sp 1
942: dice_gang sp 121
952: add sp 1
962: dice_gang sp 45
972: add sp 1
982: dice_gang sp 119
992: add sp 1
1002: dice_gang sp 114
1012: add sp 1
1022: dice_gang sp 111
1032: add sp 1
1042: dice_gang sp 110
1052: add sp 1
1062: dice_gang sp 103
1072: add sp 1
1082: dice_gang sp 46
1092: add sp 1
1102: dice_gang sp 112
1112: add sp 1
1122: dice_gang sp 110
1132: add sp 1
1142: dice_gang sp 103
1152: add sp 1
1162: mov ax 1 ; ax = 1; open
1172: mov bx dx ; bx = dx = 1675
1182: mov cx 1 ; cx = 1
1192: kevin higgs <3 1 ; read 1 byte at 1675
1198: load cx dx ; cx = *dx
1208: cmp cx 62 ; cx == '>'
1218: l_distribution 1294 ; jeq 1294 -> sp++
1224: cmp cx 60 ; cx == '<'
1234: l_distribution 1310 ; jeq 1310 -> sp--
1240: cmp cx 43 ; cx == '+'
1250: l_distribution 1326 ; jeq 1326 -> cx = *sp; cx++; *sp = cx
1256: cmp cx 45 ; cx == '-'
1266: l_distribution 1362 ; jeq 1362 -> cx = *sp; cx--; *sp = cx
1272: cmp cx 63 ; cx == '?'
1282: l_distribution 1398 ; jeq 1398 -> nop
1288: jmp 1162
1294: add sp 1
1304: jmp 1162
1310: sub sp 1
1320: jmp 1162
1326: load cx sp
1336: add cx 1
1346: dice_gang sp cx ; *cx = sp
1356: jmp 1162
1362: load cx sp
1372: sub cx 1
1382: dice_gang sp cx ; *sp = cx
1392: jmp 1162
1398: jmp 1162
Bad memory condition
invalid_instruction
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment