Subversion Repositories svn.mios

Rev

Rev 790 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
44 tk 1
; $Id: sid_lcd.inc 869 2009-12-08 21:52:43Z tk $
1 tk 2
;
3
; MIDIbox SID LCD routines
4
;
5
; ==========================================================================
6
;
7
;  Copyright 1998-2007 Thorsten Klose (tk@midibox.org)
8
;  Licensed for personal non-commercial use only.
9
;  All other rights reserved.
10
;
11
; ==========================================================================
12
 
13
;; --------------------------------------------------------------------------
14
;;  Shortcut to MIOS_LCD_PrintChar (can be called with rcall which consumes only 2 bytes)
15
;; --------------------------------------------------------------------------
16
SID_LCD_PrintChar
17
	goto	MIOS_LCD_PrintChar
18
 
19
;; --------------------------------------------------------------------------
20
;;  This functions prints x chars
21
;;  IN:  character in PRODL, number of chars in WREG
22
;;  OUT: x chars
23
;;  USES: PRODH
24
;; --------------------------------------------------------------------------
25
SID_LCD_PrintChars
26
	movwf	PRODH
27
SID_LCD_PrintCharsLoop
28
	movf	PRODL, W
29
	rcall	SID_LCD_PrintChar
30
	decfsz	PRODH, F
31
	rgoto	SID_LCD_PrintCharsLoop
32
	return
33
 
34
;; --------------------------------------------------------------------------
35
;;  This functions prints x spaces
36
;;  IN:  number of spaces in WREG
37
;;  OUT: x spaces
38
;;  USES: PROD[LH]
39
;; --------------------------------------------------------------------------
40
SID_LCD_PrintSpaces
41
	movwf	PRODH
42
	movlw	' '
43
	movwf	PRODL
44
	rgoto	SID_LCD_PrintCharsLoop
45
 
46
;; --------------------------------------------------------------------------
47
;;  help function to print an ensemble number
48
;;  IN: ensemble in SID_ENSEMBLE
49
;;  OUT: 4 characters
50
;; --------------------------------------------------------------------------
51
 
52
SID_LCD_PrintEnsembleNumber
53
	movff	SID_ENSEMBLE, PRODL
54
 
55
SID_LCD_PrintEnsembleNumberPRODL	; label for cs_menu_print.inc to store CS_MENU_SAVE_ENS in PRODL
56
	movlw	'E'
57
	call	SID_LCD_PrintChar
58
 
790 tk 59
	;; Internal EEPROM selected?
60
	movf	PRODL, W
61
	bz	SID_LCD_PrintEnsembleNumber_Int
62
 
1 tk 63
	;; print ensemble number, padded with 0
64
	incf	PRODL, W
65
	clrf	MIOS_PARAMETER1
66
	call	MIOS_HLP_Dec2BCD
67
	movf	MIOS_PARAMETER2, W
68
	call	MIOS_LCD_PrintHex1
69
	movf	MIOS_PARAMETER1, W
70
	goto	MIOS_LCD_PrintHex2
71
 
790 tk 72
 
1 tk 73
;; --------------------------------------------------------------------------
74
;;  help function to print a patch number
75
;;  + '*' if patch or BankStick not accessible
76
;;  IN: bank in SID_BANK, patch in SID_PATCH
77
;;  OUT: 4 characters
78
;; --------------------------------------------------------------------------
79
SID_LCD_PrintPatchNumber
790 tk 80
	;; Internal EEPROM selected?
81
	movf	SID_PATCH, W
82
	bz	SID_LCD_PrintPatchNumber_Int
83
 
1 tk 84
	;; print bank character
85
	movf	SID_BANK, W
86
	addlw	'A'
87
	rcall	SID_LCD_PrintChar
88
 
89
	;; print patch number, padded with 0
90
	incf	SID_PATCH, W
91
	clrf	MIOS_PARAMETER1
92
	call	MIOS_HLP_Dec2BCD
93
	movf	MIOS_PARAMETER2, W
94
	call	MIOS_LCD_PrintHex1
95
	movf	MIOS_PARAMETER1, W
96
	goto	MIOS_LCD_PrintHex2
97
 
790 tk 98
SID_LCD_PrintPatchNumber_Int
99
	movlw	'P'
100
	rcall	SID_LCD_PrintChar
1 tk 101
 
790 tk 102
SID_LCD_PrintEnsembleNumber_Int
103
	movlw	'I'
104
	rcall	SID_LCD_PrintChar
105
	movlw	'n'
106
	rcall	SID_LCD_PrintChar
107
	movlw	't'
108
	rgoto	SID_LCD_PrintChar
109
 
110
 
1 tk 111
;; --------------------------------------------------------------------------
112
;;  help function to print the engine name
113
;;  IN: engine number (0-3) in WREG
114
;;  OUT: 2 characters
115
;; --------------------------------------------------------------------------
116
SID_LCD_PrintEngine
117
	andlw	0x03
118
	TABLE_ADDR_MUL_W SID_LCD_PrintEngine_Tab, 2
119
	movlw	2
120
	goto	MIOS_LCD_PrintPreconfString
121
 
122
SID_LCD_PrintEngine_Tab
123
	db	"Ld", "Bs", "Dr", "Ml"
124
 
125
;; --------------------------------------------------------------------------
126
;;  help function to print the patch name
127
;;  USES: TMP1
128
;; --------------------------------------------------------------------------
129
SID_LCD_PrintPatch
130
	call	CS_MENU_MS_GetSIDBank
131
	movwf	SID_BANK
132
	call	CS_MENU_MS_GetSIDPatch
133
	movwf	SID_PATCH
134
 
135
	movf	SID_BANK, W
136
	bnz	SID_LCD_PrintPatch_BSCheck
137
	movf	SID_PATCH, W
138
	bz	SID_LCD_PrintPatch_NoBSCheck
139
SID_LCD_PrintPatch_BSCheck
140
	call	SID_PBANK_CheckPatchValid
141
	bz	SID_LCD_PrintPatch_BSCheck_Ok
142
	xorlw	2
143
	bz	SID_LCD_PrintPatchNoPtch
144
	rgoto	SID_LCD_PrintPatchNoBS
145
 
146
SID_LCD_PrintPatch_BSCheck_Ok
147
SID_LCD_PrintPatch_NoBSCheck
148
	lfsr	FSR0, SID_EDIT_BUFFER
149
	movlw	SID_Ix_NAME_x
150
	addwf	FSR0L, F
151
	clrf	TMP1
152
	movf	POSTINC0, W
153
	bz	SID_LCD_PrintPatchEmpty
154
 
155
SID_LCD_PrintPatchLoop1
156
	andlw	0x7f
157
	skpnz
158
	movlw	' '
159
	rcall	SID_LCD_PrintChar
160
	movf	POSTINC0, W
161
	incf	TMP1, F
162
	BRA_IFCLR TMP1, 4, ACCESS, SID_LCD_PrintPatchLoop1
163
	return
164
 
165
TEXT_EMPTY_PATCH_0 da "<empty>         "
166
SID_LCD_PrintPatchEmpty
167
	TABLE_ADDR TEXT_EMPTY_PATCH_0
168
SID_LCD_PrintPatchNoBS_Cont
169
	movlw	0x10
170
	goto	MIOS_LCD_PrintPreconfString
171
 
172
 
173
TEXT_EMPTY_PATCH_1 da "<No BankStick>  "
362 tk 174
TEXT_EMPTY_PATCH_E da "<Ens. BankStick>"
1 tk 175
SID_LCD_PrintPatchNoBS
362 tk 176
	movf	SID_BANK, W
177
	xorlw	DEFAULT_ENS_BS_CS
178
	bz	SID_LCD_PrintPatchNoBSEns
1 tk 179
	TABLE_ADDR TEXT_EMPTY_PATCH_1
180
	rgoto	SID_LCD_PrintPatchNoBS_Cont
362 tk 181
SID_LCD_PrintPatchNoBSEns
182
	TABLE_ADDR TEXT_EMPTY_PATCH_E
183
	rgoto	SID_LCD_PrintPatchNoBS_Cont
1 tk 184
 
185
TEXT_EMPTY_PATCH_2 da "<only 32k BS>   "
186
SID_LCD_PrintPatchNoPtch
187
	TABLE_ADDR TEXT_EMPTY_PATCH_2
188
	rgoto	SID_LCD_PrintPatchNoBS_Cont
189
 
190
;; --------------------------------------------------------------------------
191
;;  help function to print the patch name directly from EEPROM (used by SAV menu)
192
;;  IN: patch in SID_PATCH, bank in SID_BANK
193
;;  USES: TMP1
194
;; --------------------------------------------------------------------------
195
SID_LCD_PrintPatchEE
196
	movf	SID_BANK, W	; always allow to store in bank #0
197
	bz	SID_LCD_PrintPatchEE_Ok
198
 
199
	;; notify if no bankstick (or invalid patch)
200
	call	SID_PBANK_CheckPatchValid
201
	bz	SID_LCD_PrintPatchEE_Ok
202
	xorlw	2
203
	bz	SID_LCD_PrintPatchNoPtch
204
	rgoto	SID_LCD_PrintPatchNoBS
205
 
206
SID_LCD_PrintPatchEE_Ok
207
	clrf	EEADR		; Patch Name is stored at offset 0
208
	clrf	EEADRH
209
	clrf	TMP1
210
	call	SID_PBANK_Read
211
	andlw	0x7f
212
	bz	SID_LCD_PrintPatchEmpty
213
 
214
SID_LCD_PrintPatchEELoop
215
	rcall	SID_LCD_PrintChar
216
	call	SID_PBANK_Read
217
	andlw	0x7f
218
	skpnz
219
	movlw	' '
220
	incf	TMP1, F
221
	BRA_IFCLR TMP1, 4, ACCESS, SID_LCD_PrintPatchEELoop
222
	return
223
 
224
 
225
;; --------------------------------------------------------------------------
226
;;  This function prints the parameter name (20 characters)
227
;;  called by CS_MENU_ParameterUpdate when Knob/WT parameter assignments are changed
228
;;  to print a temporary message
229
;;  IN: parameter number in WREG
230
;;  USES: PROD[LH], TMP[1234]
231
;; --------------------------------------------------------------------------
232
SID_LCD_LongParName
233
	movwf	TMP1		; temporary store number in TMP1
234
 
235
	;; print number at left side
236
	call	MIOS_LCD_PrintBCD3
237
	movlw	'|'
238
	rcall	SID_LCD_PrintChar
239
 
240
	;; get left/right string part from parameter table (-> sid_par_table.inc)
241
	movf	TMP1, W
242
	movff	SID_EDIT_BUFFER + SID_Ix_ENGINE, TABLAT
243
	call	SID_PAR_TABLE_GetPtr	; expecting engine in TABLAT[1:0]
244
	tblrd*+
245
	movff	TABLAT, TMP2		; left string -> TMP2
246
	tblrd*+
247
	movff	TABLAT, TMP3		; right string -> TMP3
248
 
249
	;; print parameter name (8 characters)
250
	movf	TMP2, W
251
	TABLE_ADDR_MUL_W SID_PAR_S_TABLE, SID_PAR_S_TABLE_WIDTH
252
	movlw	8
253
	call	MIOS_LCD_PrintPreconfString
254
 
255
	;; print space
256
	movlw	' '
257
	rcall	SID_LCD_PrintChar
258
 
259
	;; print target (7 characters)
260
	movf	TMP3, W
869 tk 261
	JUMPTABLE_2BYTES 21 ; entries
1 tk 262
	rgoto	SID_LCD_LongParName_NOP
263
	rgoto	SID_LCD_LongParName_OSC
264
	rgoto	SID_LCD_LongParName_FIL
869 tk 265
	rgoto	SID_LCD_LongParName_FIL_L
266
	rgoto	SID_LCD_LongParName_FIL_R
1 tk 267
	rgoto	SID_LCD_LongParName_KNOB
268
	rgoto	SID_LCD_LongParName_EXT
269
	rgoto	SID_LCD_LongParName_OSC123
270
	rgoto	SID_LCD_LongParName_MOD
271
	rgoto	SID_LCD_LongParName_LFO
272
	rgoto	SID_LCD_LongParName_ENV
273
	rgoto	SID_LCD_LongParName_WT
274
	rgoto	SID_LCD_LongParName_OSC_INS
275
	rgoto	SID_LCD_LongParName_LFO1_INS
276
	rgoto	SID_LCD_LongParName_LFO2_INS
277
	rgoto	SID_LCD_LongParName_ENV_INS
278
	rgoto	SID_LCD_LongParName_OSC_BL
279
	rgoto	SID_LCD_LongParName_LFO_BL
280
	rgoto	SID_LCD_LongParName_ENV_BL
281
	rgoto	SID_LCD_LongParName_DRM_CUR
282
	rgoto	SID_LCD_LongParName_DRM_INS
283
 
284
 
285
SID_LCD_LongParName_NOP
286
	;; print 7 spaces
287
	movlw	7
288
	rgoto	SID_LCD_PrintSpaces
289
 
290
SID_LCD_LongParName_OSC
291
	;; print "OSC    "
292
	movlw	'O'
293
	rcall	SID_LCD_PrintChar
294
	movlw	'S'
295
	rcall	SID_LCD_PrintChar
296
	movlw	'C'
297
	rcall	SID_LCD_PrintChar
298
	movlw	4
299
	rgoto	SID_LCD_PrintSpaces
300
 
301
 
302
SID_LCD_LongParName_FIL_STR
303
	db	"Filter "
304
SID_LCD_LongParName_FIL
305
	;; "Filter "
306
	TABLE_ADDR SID_LCD_LongParName_FIL_STR
307
	movlw	7
308
	goto	MIOS_LCD_PrintPreconfString
869 tk 309
 
310
SID_LCD_LongParName_FIL_L
311
	;; "FilterL"
312
	TABLE_ADDR SID_LCD_LongParName_FIL_STR
313
	movlw	6
314
	call	MIOS_LCD_PrintPreconfString
315
	movlw	'L'
316
	rgoto	SID_LCD_PrintChar
1 tk 317
 
869 tk 318
SID_LCD_LongParName_FIL_R
319
	;; "FilterR"
320
	TABLE_ADDR SID_LCD_LongParName_FIL_STR
321
	movlw	6
322
	call	MIOS_LCD_PrintPreconfString
323
	movlw	'R'
324
	rgoto	SID_LCD_PrintChar
325
 
1 tk 326
SID_LCD_LongParName_KNOB_TAB
327
	db	'1', '2', '3', '4', '5', 'V', 'P', 'A'
328
SID_LCD_LongParName_KNOB
329
	;; print "KNOB#. "
330
	movlw	'K'
331
	rcall	SID_LCD_PrintChar
332
	movlw	'N'
333
	rcall	SID_LCD_PrintChar
334
	movlw	'O'
335
	rcall	SID_LCD_PrintChar
336
	movlw	'B'
337
	rcall	SID_LCD_PrintChar
338
	movlw	'#'
339
	rcall	SID_LCD_PrintChar
340
	movf	TMP1, W
341
	andlw	0x07
342
	TABLE_ADDR_MUL_W SID_LCD_LongParName_KNOB_TAB, 1
343
	tblrd*+
344
	movf	TABLAT, W
345
	rcall	SID_LCD_PrintChar
346
	movlw	' '
347
	rgoto	SID_LCD_PrintChar
348
 
349
SID_LCD_LongParName_EXT
350
	;; print "EXT#.  "
351
	movlw	'E'
352
	rcall	SID_LCD_PrintChar
353
	movlw	'X'
354
	rcall	SID_LCD_PrintChar
355
	movlw	'T'
356
	rcall	SID_LCD_PrintChar
357
	movlw	'#'
358
	rcall	SID_LCD_PrintChar
359
	movf	TMP1, W
360
	andlw	0x07
361
	addlw	1
362
	call	MIOS_LCD_PrintBCD1
363
	movlw	2
364
	rgoto	SID_LCD_PrintSpaces
365
 
366
SID_LCD_LongParName_OSC123
367
	;; print "OSC#123" or "OSC#.  "
368
	movlw	'O'
369
	rcall	SID_LCD_PrintChar
370
	movlw	'S'
371
	rcall	SID_LCD_PrintChar
372
	movlw	'C'
373
	rcall	SID_LCD_PrintChar
374
	movlw	'#'
375
	rcall	SID_LCD_PrintChar
376
	movf	TMP1, W
377
	andlw	0x03
378
	bz	SID_LCD_LongParName_OSC123_All
379
	call	MIOS_LCD_PrintBCD1
380
	movlw	2
381
	rgoto	SID_LCD_PrintSpaces
382
SID_LCD_LongParName_OSC123_All
383
	movlw	'1'
384
	rcall	SID_LCD_PrintChar
385
	movlw	'2'
386
	rcall	SID_LCD_PrintChar
387
	movlw	'3'
388
	rgoto	SID_LCD_PrintChar
389
 
390
SID_LCD_LongParName_MOD
391
	;; print "MOD#.  "
392
	movlw	'M'
393
	rcall	SID_LCD_PrintChar
394
	movlw	'O'
395
	rcall	SID_LCD_PrintChar
396
	movlw	'D'
397
	rcall	SID_LCD_PrintChar
398
	movlw	'#'
399
	rcall	SID_LCD_PrintChar
400
	movf	TMP1, W
401
	andlw	0x07
402
	addlw	1
403
	call	MIOS_LCD_PrintBCD1
404
	movlw	2
405
	rgoto	SID_LCD_PrintSpaces
406
 
407
SID_LCD_LongParName_LFO
408
	;; print "LFO#.  "
409
	movlw	'L'
410
	rcall	SID_LCD_PrintChar
411
	movlw	'F'
412
	rcall	SID_LCD_PrintChar
413
	movlw	'O'
414
	rcall	SID_LCD_PrintChar
415
	movlw	'#'
416
	rcall	SID_LCD_PrintChar
417
	movf	TMP1, W
418
	andlw	0x07
419
	addlw	1
420
	call	MIOS_LCD_PrintBCD1
421
	movlw	2
422
	rgoto	SID_LCD_PrintSpaces
423
 
424
SID_LCD_LongParName_ENV
425
	;; print "ENV#.  "
426
	movlw	'E'
427
	rcall	SID_LCD_PrintChar
428
	movlw	'N'
429
	rcall	SID_LCD_PrintChar
430
	movlw	'V'
431
	rcall	SID_LCD_PrintChar
432
	movlw	'#'
433
	rcall	SID_LCD_PrintChar
434
	swapf	TMP1, W
435
	andlw	0x01
436
	addlw	1
437
	call	MIOS_LCD_PrintBCD1
438
	movlw	2
439
	rgoto	SID_LCD_PrintSpaces
440
 
441
SID_LCD_LongParName_WT
442
	;; print "WT#.   "
443
	movlw	'W'
444
	rcall	SID_LCD_PrintChar
445
	movlw	'T'
446
	rcall	SID_LCD_PrintChar
447
	movlw	'#'
448
	rcall	SID_LCD_PrintChar
449
	movf	TMP1, W
450
	andlw	0x03
451
	addlw	1
452
	call	MIOS_LCD_PrintBCD1
453
	movlw	3
454
	rgoto	SID_LCD_PrintSpaces
455
 
456
SID_LCD_LongParName_OSC_INS
457
	;; print "OSC All", "OSC Cur" or "OSC  Ix" (x=num)
458
	movlw	'O'
459
	rcall	SID_LCD_PrintChar
460
	movlw	'S'
461
	rcall	SID_LCD_PrintChar
462
	movlw	'C'
463
	rcall	SID_LCD_PrintChar
464
	movlw	' '
465
	rcall	SID_LCD_PrintChar
466
	rgoto	SID_LCD_LongParName_INS_Hlp
467
 
468
SID_LCD_LongParName_LFO1_INS
469
	;; print "LFO1All", "LFO1Cur" or "LFO1 Ix" (x=num)
470
	movlw	'L'
471
	rcall	SID_LCD_PrintChar
472
	movlw	'F'
473
	rcall	SID_LCD_PrintChar
474
	movlw	'O'
475
	rcall	SID_LCD_PrintChar
476
	movlw	'1'
477
	rcall	SID_LCD_PrintChar
478
	rgoto	SID_LCD_LongParName_INS_Hlp
479
 
480
SID_LCD_LongParName_LFO2_INS
481
	;; print "LFO2All", "LFO2Cur" or "LFO2 Ix" (x=num)
482
	movlw	'L'
483
	rcall	SID_LCD_PrintChar
484
	movlw	'F'
485
	rcall	SID_LCD_PrintChar
486
	movlw	'O'
487
	rcall	SID_LCD_PrintChar
488
	movlw	'2'
489
	rcall	SID_LCD_PrintChar
490
	rgoto	SID_LCD_LongParName_INS_Hlp
491
 
492
SID_LCD_LongParName_ENV_INS
493
	;; print "ENV All", "ENV Cur" or "ENV  Ix" (x=num)
494
	movlw	'E'
495
	rcall	SID_LCD_PrintChar
496
	movlw	'N'
497
	rcall	SID_LCD_PrintChar
498
	movlw	'V'
499
	rcall	SID_LCD_PrintChar
500
	movlw	' '
501
	rcall	SID_LCD_PrintChar
502
	rgoto	SID_LCD_LongParName_INS_Hlp
503
 
504
SID_LCD_LongParName_OSC_BL
505
	;; print "BL   LR", "BL  Cur", "BL   L-" or "BL   -R"
506
	movlw	'B'
507
	rcall	SID_LCD_PrintChar
508
	movlw	'L'
509
	rcall	SID_LCD_PrintChar
510
	movlw	' '
511
	rcall	SID_LCD_PrintChar
512
	movlw	' '
513
	rcall	SID_LCD_PrintChar
514
	rgoto	SID_LCD_LongParName_BL_Hlp
515
 
516
SID_LCD_LongParName_LFO_BL
517
	;; print "LFOx LR", "LFOxCur", "LFOx L-" or "LFOx -R"
518
	movlw	'L'
519
	rcall	SID_LCD_PrintChar
520
	movlw	'F'
521
	rcall	SID_LCD_PrintChar
522
	movlw	'O'
523
	rcall	SID_LCD_PrintChar
524
	movlw	'1'
525
	btfsc	TMP1, 2
526
	movlw '2'
527
	rcall	SID_LCD_PrintChar
528
	rgoto	SID_LCD_LongParName_BL_Hlp
529
 
530
SID_LCD_LongParName_ENV_BL
531
	;; print "ENV  LR", "ENV Cur", "ENV  L-" or "ENV  -R"
532
	movlw	'E'
533
	rcall	SID_LCD_PrintChar
534
	movlw	'N'
535
	rcall	SID_LCD_PrintChar
536
	movlw	'V'
537
	rcall	SID_LCD_PrintChar
538
	movlw	' '
539
	rcall	SID_LCD_PrintChar
540
	rgoto	SID_LCD_LongParName_BL_Hlp
541
 
542
 
543
SID_LCD_LongParName_DRM_CUR
544
	;; print "Drum Cur"
545
	rcall	SID_LCD_LongParName_DRM_Hlp_Drum
546
	rgoto	SID_LCD_LongParName_DRM_Hlp_C
547
 
548
SID_LCD_LongParName_DRM_INS
549
	;; print "Drum xx" (x=num)
550
	rcall	SID_LCD_LongParName_DRM_Hlp_Drum
551
	movlw	' '
552
	rcall	SID_LCD_PrintChar
553
	movf	TMP1, W
554
	andlw	0x0f
555
	addlw	1
556
	goto	MIOS_LCD_PrintBCD2
557
 
558
 
559
 
560
;; ---
561
;; ---
562
;; ---
563
SID_LCD_LongParName_INS_Hlp
564
	movf	TMP1, W
565
	andlw	0x07
566
	bz	SID_LCD_LongParName_INS_Hlp_A
567
	addlw	-1
568
	bz	SID_LCD_LongParName_INS_Hlp_C
569
SID_LCD_LongParName_INS_Hlp_N
570
	movlw	' '
571
	rcall	SID_LCD_PrintChar
572
	movlw	'I'
573
	rcall	SID_LCD_PrintChar
574
	movf	TMP1, W
575
	andlw	0x07
576
	addlw	-1
577
	goto	MIOS_LCD_PrintBCD1
578
 
579
SID_LCD_LongParName_INS_Hlp_A
580
	movlw	'A'
581
	rcall	SID_LCD_PrintChar
582
	movlw	'l'
583
	rcall	SID_LCD_PrintChar
584
	movlw	'l'
585
	rgoto	SID_LCD_PrintChar
586
 
587
 
588
SID_LCD_LongParName_BL_Hlp
589
	movf	TMP1, W
590
	andlw	0x03
591
	bz	SID_LCD_LongParName_BL_Hlp_A
592
	addlw	-1
593
	bz	SID_LCD_LongParName_BL_Hlp_C
594
SID_LCD_LongParName_BL_Hlp_LR
595
	movlw	' '
596
	rcall	SID_LCD_PrintChar
597
	movlw	'-'
598
	btfss	TMP1, 0
599
	movlw 'L'
600
	rcall	SID_LCD_PrintChar
601
	movlw	'-'
602
	btfsc	TMP1, 0
603
	movlw 'R'
604
	rgoto	SID_LCD_PrintChar
605
 
606
SID_LCD_LongParName_BL_Hlp_A
607
	movlw	' '
608
	rcall	SID_LCD_PrintChar
609
	movlw	'L'
610
	rcall	SID_LCD_PrintChar
611
	movlw	'R'
612
	rgoto	SID_LCD_PrintChar
613
 
614
SID_LCD_LongParName_INS_Hlp_C
615
SID_LCD_LongParName_BL_Hlp_C
616
SID_LCD_LongParName_DRM_Hlp_C
617
	movlw	'C'
618
	rcall	SID_LCD_PrintChar
619
	movlw	'u'
620
	rcall	SID_LCD_PrintChar
621
	movlw	'r'
622
	rgoto	SID_LCD_PrintChar
623
 
624
 
625
SID_LCD_LongParName_DRM_Hlp_Drum
626
	movlw	'D'
627
	rcall	SID_LCD_PrintChar
628
	movlw	'r'
629
	rcall	SID_LCD_PrintChar
630
	movlw	'u'
631
	rcall	SID_LCD_PrintChar
632
	movlw	'm'
633
	rgoto	SID_LCD_PrintChar