from BiboAssembler Tooldisk 1
The data "
00010 .LI OFF
00020 *
00030 *
00040 ------------------------------
00050 * Eingaberoutinen fuer *
00060 * Dezimalzahlen, *
00070 * Hexadezimalzahlen und *
00080 * Binaerzahlen *
00090 * Ohne Korrekturmoeglichkeit *
00100 * *
00110 * ACHTUNG: Routinen benoeti- *
00120 * gen die Ein- und *
00130 * Ausgaberoutinen *
00140 * aus dem File *
00150 * INOUT.INC *
00160 * Sollten diese *
00170 * nicht schon an an-*
00180 * derer Stelle *
00190 * stehen muessen Sie*
00200 * sie hier mit ein- *
00210 * binden. *
00220 ------------------------------
00230 *
00240 *
00250 *
00260 *
00270 *
00280 GETDEZ LDA #0 Wert
00290 STA WERT loeschen
00300 STA WERT+1
00310 .1 JSR GETKEY Taste holen
00320 CMP #$9B Nur RETURN
00330 BEQ OUT und
00340 CMP #'0 Ziffern
00350 BCC .1 von 0-9
00360 CMP #'9+1 zulassen
00370 BCS .1
00380 PHA
00390 JSR PUTCHAR ausgeben
00400 PLA
00410 AND #$F Nur untere
00420 PHA 4 Bits werden gebraucht
00430 *
00440 LDA WERT Wert
00450 STA HOLD wird
00460 LDA WERT+1 mit 10
00470 STA HOLD+1 multi-
00480 ASL HOLD pliziert
00490 ROL HOLD+1 plus
00500 ASL HOLD Ziffern
00510 ROL HOLD+1 wert
00520 CLC
00530 LDA HOLD
00540 ADC WERT
00550 STA WERT
00560 LDA HOLD+1
00570 ADC WERT+1
00580 STA WERT+1
00590 ASL WERT
00600 ROL WERT+1
00610 CLC
00620 PLA
00630 ADC WERT
00640 STA WERT
00650 BCC .2
00660 INC WERT+1
00670 .2 JMP .1 Zurueck in Schleife
00680 *
00690 OUT JMP PUTCHAR Ausstieg mit RETURN
00700 *
00710 WERT .HX 0000 Hilfsregister
00720 HOLD .HX 0000
00730 *
00740 ------------------------------
00750 GETHEX LDA #0 Wert
00760 STA WERT loeschen
00770 STA WERT+1
00780 LDA #3 Nur 4
00790 STA HOLD Zeichen
00800 *
00810 .1 JSR GETKEY Taste holen
00820 CMP #$9B Nur
00830 BEQ OUT RETURN
00840 CMP #'0 sowie
00850 BCC .1
00860 CMP #'G 0-9
00870 BCS .1 und
00880 CMP #'9+1 A-F
00890 BCC .2
00900 CMP #'A zulassen
00910 BCC .1
00920 *
00930 PHA
00940 JSR PUTCHAR Ausgeben
00950 PLA
00960 .2 CMP #'9+1 Wert
00970 BCC .3 auf 0-15
00980 SEC umrechnen
00990 SBC #7
01000 .3 SEC
01010 SBC #$30
01020 LDX #3 Zahl*16
01030 .4 ASL WERT
01040 ROL WERT+1
01050 DEX
01060 BPL .4
01070 ORA WERT Wert+Zahl
01080 STA WERT 0x1FZahl
01090 DEC HOLD naechtes
01100 BPL .1 Zeichen
01110 OUT2 LDA #$9B Ausstieg mit
01120 JMP OUT Return
01130 *
01140 ------------------------------
01150 *
01160 GETBIN LDA #0 Zahl
01170 STA WERT loeschen
01180 STA WERT+1
01190 LDA #7 8 Zeichen
01200 STA HOLD
01210 *
01220 .1 JSR GETKEY Taste holen
01230 CMP #$9B Nur
01240 BEQ OUT2 RETURN
01250 CMP #'0 und
01260 BCC .1 Ziffern
01270 CMP #'2 0 und 1
01280 BCS .1 zulassen
01290 PHA
01300 JSR PUTCHAR Ausgeben
01310 PLA
01320 AND #1 Nur ein
01330 LSR Bit wird
01340 ROL WERT gebraucht
01350 DEC HOLD naechtes Zeichen
01360 BPL .1
01370 JMP OUT2 Ausstieg
" is not legal for a JDOM character content: 0x001f is not a legal XML character.