2 ; Oric Telemon definition
3 ; Telemon 2.4 & Telemon 3.x
4 ; For telemon 3.x check http://orix.oric.org
8 ; ---------------------------------------------------------------------------
11 SCREEN_XSIZE = 40 ; screen columns
12 SCREEN_YSIZE = 28 ; screen rows
16 FNAME_LEN = 11 ; maximum length of file-name
18 ; ---------------------------------------------------------------------------
20 ; this identifers are used for channel management
26 XRSS = $90 ; RS232 out
29 ; ---------------------------------------------------------------------------
32 ; ---------------------------------------------------------------------------
46 PTR_READ_DEST := $2C ; used for XFREAD and XWRITE only in telemon 3.x
59 ; ---------------------------------------------------------------------------
61 IRQVec := $02fb ; "fast" interrupt vector
65 ; ---------------------------------------------------------------------------
69 .struct VIA ; Versatile Interface Adapter
71 PRB .byte ; Port Register B
72 PRA .byte ; Port Register A
73 DDRB .byte ; Data Direction Register B
74 DDRA .byte ; Data Direction Register A
76 T1L .word ; Timer 1 Latch
78 SR .byte ; Shift Register
79 ACR .byte ; Auxiliary Control Register
80 PCR .byte ; Peripheral Control Register
81 IFR .byte ; Interrupt Flags Register
82 IER .byte ; Interrupt Enable Register
83 PRA2 .byte ; Port Register A without handshaking
87 .struct VIA2 ; Versatile Interface Adapter
89 PRB .byte ; Port Register B
90 PRA .byte ; Port Register A
91 DDRB .byte ; Data Direction Register B
92 DDRA .byte ; Data Direction Register A
94 T1L .word ; Timer 1 Latch
96 SR .byte ; Shift Register
97 ACR .byte ; Auxiliary Control Register
98 PCR .byte ; Peripheral Control Register
99 IFR .byte ; Interrupt Flags Register
100 IER .byte ; Interrupt Enable Register
101 PRA2 .byte ; Port Register A without handshaking
105 .struct ACIA ; Asynchronous Communications Interface Adapter
109 CMD .byte ; Command register
110 CTRL .byte ; Control register
116 ; ---------------------------------------------------------------------------
119 ; primitives telemon 2.4
128 XVARS = $24 ; only in TELEMON 3.x, in telemon 2.4, it's XNOMFI ($24)
129 XFREAD = $27 ; only in TELEMON 3.x
130 XOPEN = $30 ; only in TELEMON 3.x
131 XCOSCR = $34 ; switch off cursor
132 XCSSCR = $35 ; switch on cursor
133 XCLOSE = $3A ; only in TELEMON 3.x Close file
134 XFWRITE = $3B ; only in TELEMON 3.x write file
142 XSOUT = $67 ; Send A register to RS232, available in telemon 2.4 & 3.x
150 ; ---------------------------------------------------------------------------
151 ; ROM entries variables
155 ; ---------------------------------------------------------------------------
164 ; ---------------------------------------------------------------------------
170 MAX_BUFEDT_LENGTH=110
174 CH376_COMMAND := $341
178 .macro BRK_TELEMON value