all repos — xyw @ d7a215a6ec18fefd1f668e46a96a015d70b6fe99

A minimal virtual machine and assembler for terminals.

devices.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
;system
.macro system.state           $FF00
.macro system.error           $FF01
.macro system.ssp             $FF02
.macro system.usp             $FF03
.macro system.x               $FF04
.macro system.y               $FF05
.macro system.xw              $FF06
.macro system.yw              $FF08
.macro system.pc              $FF0a
.macro system.page            $FF0c
.macro system.on_error        $FF0d

;console
.macro console.input          $FF10
.macro console.output         $FF11
.macro console.error          $FF12
.macro console.on_keypress    $FF13

;clock
.macro clock.year             $FF20
.macro clock.month            $FF22
.macro clock.week             $FF23
.macro clock.monthday         $FF24
.macro clock.weekday          $FF25
.macro clock.hour             $FF26
.macro clock.minute           $FF27
.macro clock.second           $FF28
.macro clock.timer            $FF29
.macro clock.on_timer_elapsed $FF2b

;file
.macro file.path              $FF30
.macro file.operation         $FF32
.macro file.state             $FF33
.macro file.type              $FF34
.macro file.read              $FF35
.macro file.write             $FF36
.macro file.append            $FF37

;display 
.macro display.width          $FF40
.macro display.height         $FF41
.macro display.fill           $FF42
.macro display.x              $FF43
.macro display.y              $FF44
.macro display.on_render      $FF45

;buzzer
.macro buzzer.state           $FF50
.macro buzzer.samples         $FF51
.macro buzzer.n_samples       $FF53
.macro buzzer.on_stop         $FF55