examples/lib/macros.xyw
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
;;; Devices ; system .macro system.state $00 .macro system.error $01 .macro system.page $02 .macro system.random $03 .macro system.on_error $04 .macro system.image_exec $06 ; terminal .macro terminal.input $10 .macro terminal.output $11 .macro terminal.on_keypress $12 .macro terminal.on_argument $14 ; clock .macro clock.year $20 .macro clock.month $22 .macro clock.monthday $23 .macro clock.weekday $24 .macro clock.hour $25 .macro clock.minute $26 .macro clock.second $27 .macro clock.timer $28 .macro clock.on_timer $2A ; file .macro file.path $30 .macro file.type $32 .macro file.size $33 .macro file.success $35 .macro file.length $37 .macro file.read $39 .macro file.write $3B .macro file.operation $3D ; beeper .macro beeper.pitch $40 .macro beeper.length $42 .macro beeper.level $44 ;;; Utilities .macro MOD DIV POP .macro LBYTE SWP POP .macro PUTC terminal.output STB ;;; ASCII Characters .macro NL $0A PUTC .macro CR $0D PUTC .macro SP $20 PUTC ;;; Argument separators .macro arg.sep $1E .macro arg.end $1D ;;; Errors ; system .macro error.system.division_by_zero $01 .macro error.system.user_stack_overflow $02 .macro error.system.user_stack_underflow $03 .macro error.system.system_stack_overflow $04 .macro error.system.system_stack_underflow $05 .macro error.execution_depth_exceeded $06 .macro error.system.image_not_found $07 .macro error.system.image_read_error $08 .macro error.system.image_too_large $09 .macro error.system.invalid_opcode $0A ; terminal .macro error.terminal_not_tty $11 ; file .macro error.file.not_found $31 .macro error.file.access_denied $32 .macro error.file.invalid_op $33 .macro error.file.io_error $34 .macro error.file.path_too_long $35 .macro error.file.buffer_out_of_range $36 ; beeper .macro error.beeper.device $41 .macro error.beeper.memory $42 .macro error.beeper.playback $43 ;;; File operations .macro file.op.read $01 .macro file.op.write $02 .macro file.op.append $03 .macro file.op.delete $04 .macro file.op.copy $05 .macro file.op.move $06 ;;; File types .macro file.type.unspecified $00 .macro file.type.file $01 .macro file.type.directory $02 ;;; Beeper notes .macro ps $0000 ; pause (no sound) .macro c4 $0106 ; 262 Hz .macro cs4 $0115 ; 277 Hz .macro d4 $0126 ; 294 Hz .macro ds4 $0137 ; 311 Hz .macro e4 $014A ; 330 Hz .macro f4 $015D ; 349 Hz .macro fs4 $0172 ; 370 Hz .macro g4 $0188 ; 392 Hz .macro gs4 $019F ; 415 Hz .macro a4 $01B8 ; 440 Hz .macro as4 $01D2 ; 466 Hz .macro b4 $01EE ; 494 Hz .macro c5 $020B ; 523 Hz .macro cs5 $022A ; 554 Hz .macro d5 $024B ; 587 Hz .macro ds5 $026E ; 622 Hz .macro e5 $0293 ; 659 Hz .macro f5 $02BA ; 698 Hz .macro fs5 $02E4 ; 740 Hz .macro g5 $0310 ; 784 Hz .macro gs5 $033F ; 831 Hz .macro a5 $0370 ; 880 Hz .macro as5 $03A4 ; 932 Hz .macro b5 $03DC ; 988 Hz .macro c6 $0417 ; 1047 Hz .macro cs6 $0455 ; 1109 Hz .macro d6 $0497 ; 1175 Hz .macro ds6 $04DD ; 1245 Hz .macro e6 $0527 ; 1319 Hz .macro f6 $0575 ; 1397 Hz .macro fs6 $05C8 ; 1480 Hz .macro g6 $0620 ; 1568 Hz .macro gs6 $067D ; 1661 Hz .macro a6 $06E0 ; 1760 Hz .macro as6 $0749 ; 1865 Hz .macro b6 $07B8 ; 1976 Hz |