-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathetykieta_35x25.PRG
241 lines (227 loc) · 4.19 KB
/
etykieta_35x25.PRG
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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
REM : Skrypt wklajmy w putty po połączeniu z drukarką (115200,8,1,none)
REM : W drukarce wczesniej nalezy włączyc virtualny port COM
REM :
NEW
IMMEDIATE OFF
'
' Wyswietlanie klawiszy na ekranie drukarki
'
011 DISPLAY KEY 1,0
012 DISPLAY KEY 2,0
013 DISPLAY KEY 3,0
014 DISPLAY KEY 4,0
015 DISPLAY KEY 5,5
016
017 ' FORMFEED
018 ' Deklaracja zmiennych
019 CLL
020 CLEAR
021 'wartosc do przekazania z klawiatury
022 A$="15"
023 'cena do druku
024 C$=A$
025 'tmp do edycji
026 T$=""
027 'tmp do wyswietlania
028 D$=A$
029 I%=0
030 L%=1
031 '
032 ' Aktywacja klawiszy drukarki
033 '
034 KEY (10) ON
035 KEY (11) ON
036 KEY (12) ON
037 KEY (13) ON
038 KEY (14) ON
039 KEY (16) ON
040 KEY (17) ON
041 KEY (20) ON
042
043 '
044 ' Aktywacja wyswietlacza i klawiatury USB
045 '
046 OPEN "console:" FOR OUTPUT AS 1
047 COMSET 9,"","/","","=",1
048 ON COMSET 9 GOSUB SUBREAD
049 CLIP ON
050
051
052 ' Aktywacja zdarzen dla klawiszy drukarki i obsluga bledów
053 '
054 ON KEY (10) GOSUB SUBHOME
055 ON KEY (12) GOSUB SUBUP
056 ON KEY (14) GOSUB SUBDOWN
057 ON KEY (11) GOSUB SUBLEFT
058 ON KEY (13) GOSUB SUBRIGHT
059 ON KEY (16) GOSUB SUBENTER
060 ON KEY (20) GOSUB SUBBACK
061 ON KEY (17) GOSUB SUBPAPER
062 ON ERROR GOTO SUBERROR
063
064 'SETSTDIO 9,0
065 PRINT #1, CHR$(155) + "2J"
066
067 ' Wylaczenie domyslnego dzialania klawisza wstecz
068 BREAK 0 OFF
069 ' Obsługa UTF-8
070 NASC 8
071 ' Wlaczenie czujnika dyspensera
072 LTS& ON
073 'GOSUB SUBPRINT
074
075 GOSUB SUBSCREEN
076
077 '
078 ' Glowna petla czekajca na wprowadzenie danych
079 MAINLOOP:
080 COMSET 9 ON
081 IF 1 THEN GOTO MAINLOOP
082
083 '
084 ' Wprowadzenia danych z USB
085 SUBREAD:
086 Z$ = COMBUF$(9)
087 ' jesli ENTER
088 IF Z$=CHR$(10) THEN
089 'PRINT "ENTER"
090 A$=T$
091 D$=T$
092 T$=""
093
094 IF A$<>"" THEN C$=A$
095
096 X$="ARRAY$"
097 DIM ARRAY$(1)
098 I%=SPLIT(A$,X$,42)
099 IF I%=2 THEN
100 L%=VAL(ARRAY$(0))
101 C$=ARRAY$(1)
102 ELSE
103 L%=1
104 ENDIF
105 D$=C$
106 GOSUB SUBPRINT
107 ' jesli BACKSPACE
108 ELSE IF Z$=CHR$(8) THEN
109 T$ = LEFT$(T$,LEN(T$)-1) : D$=T$
110 ' jesli znak
111 ELSE
112 T$=T$+Z$
113 D$=T$
114 ENDIF
115 GOTO SUBSCREEN
116 RETURN
117
118 SUBSCREEN:
119 'PRINT #1, CHR$(155) + "2J"
120 PRINT #1, "Cena: ";+D$
121 'PRINT #1
122 RETURN
123
124
125 SUBPRINT:
126 'PRINT PRSTAT
127 IF (PRSTAT AND 2) THEN
128 PRINT #1, "Zabierz etyk."
129 ZABIERZETYK: IF (PRSTAT AND 2)<>0 THEN GOTO ZABIERZETYK
130 ENDIF
131 IF (PRSTAT AND 128) THEN PRINT #1, "Sprawdz_papier"
132 SPRAWPAPIER: IF (PRSTAT AND 128)<>0 THEN GOTO SPRAWPAPIER
133
134 PRPOS 10,160
135 FONT "Univers",7
136 PRTXT "Dyskont TANIA ODZIEŻ"
137
138 PRPOS 10,60
139 FONT "Univers Bold",30,0,75
140 PRTXT C$;" zł"
141
142 PRPOS 10,35
143 FORMAT DATE$ "YYYY-MM-DD"
144 FORMAT TIME$ "HH:MM:SS"
145 FONT "Univers",7
146 PRTXT "Data: ";DATE$("F");" ";TIME$("F")
147
148 PRPOS 10,10
149 FONT "Univers",7
150 PRTXT "Stanowisko 1"
151
152 PRINTFEED L%
153
154 RETURN
155 SUBHOME:
156 SETUP
157 RETURN
158
159
160 SUBUP:
161 BEEP
162 RETURN
163
164 SUBDOWN:
165 TESTFEED
166 RETURN
167
168 SUBLEFT:
169 BEEP
170 RETURN
171
172 SUBRIGHT:
173 BEEP
174 RETURN
175
176 SUBENTER:
177 BEEP
178 RETURN
179
180 SUBBACK:
181 PRINT "Bye"
182 LTS& OFF
183 CLOSE
184 'SETSTDIO 100
185 END
186
187 SUBPAPER:
188 IF PRSTAT<7 THEN
189 'PRINT "JEST OK"
190 PRINT PRSTAT
191 FORMFEED
192 RETURN
193 ELSE
194 'PRINT #1, CHR$(155) + "2J"
195 PRINT #1, "Sprawdz papier"
196 'PRINT #1, "===============";
197 'PRINT PRSTAT
198 RETURN
199 ENDIF
200 'czyszczenie ekranu
201 GOSUB SUBSCREEN
202 RETURN
9400 SUBERROR:
9500 PRINT #1, "Blad ";ERR; " ";ERL
9530 IF ERR=1005 OR ERR=1031 THEN
9532 PRINT #1, "Sprawdz papier"
9550 IF (PRSTAT AND 1)=0 THEN GOTO 9550
9580 ENDIF
9590 IF ERR=1022 THEN
9591 PRINT #1, "Podn.glowica"
9592 ENDIF
9600 IF ERR=1003 THEN RESUME NEXT
9650 IF (PRSTAT AND 1)<>0 THEN GOTO 9650
9670 RESUME NEXT
IMMEDIATE ON
SAVE "tmp:ETYKNEW.PRG"
SYSVAR(43)=1
COPY "/tmp/ETYKNEW.PRG","/c/scripts/ETYKNEW.PRG"
COPY "/tmp/ETYKNEW.PRG","/c/ETYKNEW.PRG"
OPEN "AUTOEXEC.BAT" FOR OUTPUT AS 1
PRINT#1,"RUN";CHR$(34);"ETYKNEW.PRG";CHR$(34)
CLOSE1
'RUN
'RUN "ETYKNEW.PRG"
REBOOT
REM :## Czyszczenie pliku autostartu
REM :OPEN "AUTOEXEC.BAT" FOR OUTPUT AS 1
REM :PRINT#1,""
REM :CLOSE1