IBM 5150 PC Technical Reference (6025005, August, 1981) (PDF)

IBM 5150 PC Technical Reference (6025005, August, 1981) (PDF) IBM 5150 PC Technical Reference (6025005, August, 1981) (PDF)

classiccomputers.info
from classiccomputers.info More from this publisher
25.03.2015 Views

LOC OBJ LINE SOURCE EAID 680052 EA20 E98901 £.1.23 EAll 80FCI0 ~EA26731A fAze F6D4 EAZA 20261700 EAZE XBa £.1.30 752C £A3l .1.01900 EA35 8400 EA37 88261900 £AlB XOD £.1.30 741F EA3F £9.1.301 EA42 EA42 F604 EA44 20261800 EA46 E814 EA4A EA4A 3eao EA4C 7310 fA4E F606180008 £.1.53 7417 EA55 3C45 EAS7 7405 EA59 80261800F7 EASE EASE FA EA5F 6020 £.1.61 £620 £.1.63 EA63 01 £.1.64 IF EA6S SF EA66 5£ EA67 5.1. EA66 59 EA69 58 EA6A 58 EA66 CF EA6C EA6C F606170008 fA71 7503 EA73 £98FOO £.1.76 £A76 F606170004 EA78 7431 EA70 3C53 ~ EA7F 7520 EASt C70672003412 £A87 £901F5 fAaA EAaA 524F5051484C4O 1875 MOV AX,INS_KEY*Z56 , SET SCAN CODE INTO AH. 0 INTO Al 1876 JMP '57 ; PUT INTO OUTPUT BUFFER 1877 1878 1------ BREAK SHIFT fOUND 1879 le80 K23: f BREAK-SHIFT-FOUND 1881 eMP AH,SCROLL_SHIFT ; IS THIS A TOGGLE KEY 1682 JAE '24 ; YEs. HAtJOlE BREAK TOGGLE 1883 UOT AH i INVERT MASK 1684 AND KBJLAG,AH TlJ!

LOC 08J LINE SOURCE £"91 474849 EA9tt 1011121314151&17 EA9C 18191EIF20212223 E:A.A4 24252b2C2D2:E2f30 EAAC 3132 1951 DB 71.72,73- ; 10 HUMBERS ON KEYPAD 1952 ;------ SUPER-SHIFT-TABlE 1953 DB 16,17,18,19,20,2:1,22,23 i A-Z TYPEWRITER CHARS l'954 DB 24.2S.30.31.32.33,~.35 1955 DB 36.37,38,44,45,46,47.48 1956 DB 49,,50 1957 1958 ;_.-••- IN ALTERNATE SHIFT, RESET NOT FOUtIJ fAAE EAAE X3V EA&'O ?SOS £A82 -B020 EAM E92501 fAS7 EAB1 BF8AEA UBA 890100 EABD F2 EABE AE EASF 7SU '£Ac1 81EF8BEA fAtS .1.01900 EAtS 840A EAtA F6£4 flee Ole7 EACE "21900 EADl EB&8 1959 1960 K31: I NO-RESET 1961 CNP AL,57 ; TEST FOR 'SPACE KEY I ... JNE K3< ; NOT THERE 1963 HOV Al •• ; SET SPACE CHAR 1964 JHP K57 ;: BUFF(R_FIll 1965 J------ LOOK 1966 FOR KEY PAD ENTRY 1967 1966 K32 : J -All-KEY-PAD 1969 I10V OI.OFFSET K30 I ALT-INPUT-TASlE 1970 HOY CX.lO ; lOOK FOR ENTRY USING KEYPAD 1971 REPNE seASB I tOOK FOR MATCH JNE 'l3 I NO.AlT_KEYPA.D SUB DI,OFFSET K3D+l ; 01 NOW HAS ENTRY VALUE HOV AL.ALT_n~puT ; GET THE CURRENT BYTE HOV AH.ID ; MULTIPLY BY 10 HUL ADO HOV IN" AH AX.OI ••• ALT.INPUT ,Al 1981 1------ L.()()I( fOR 'SUPERStlIFT ENTRY fAD3­ EA03 'C6G6'1 toOItO fAne 891AOO fA08 F2 fADe AE EADD 7505 U.OF 8000 un £9F800 1982 1983 ; NO-AlT-KEYPAO 1964 ; ZERO ANY PREVIOUS ENTRY INTO INPUT 1985 NOV CX,26 ; DI,ES ALREADY POINTING 1986 REPME SCASS ; LOOK FOR MATCH IN ALPHABET 1987 JNE K34 i NOT FOUNO. FUNCTIOO KEY OR OTHER 1988 MOV Al.a ; ASCII CODE OF ZERO 1989 JM-P K57 ; PUT IT IN THE BUf.FER 199'0 1991 ;------ LOOK FOR TOP ROW OF ALTERNATE SHIFT UE4 EAE4 3C02: EAE6 noe EAE8 3COE EAEA 7308 EAft 80C476 U,Ef BODO EAFI £9£800 1992 1993 K14: ; ALT-TOP-ROW 1994 eM!' AL.2 ~ KEy.wITH 'I' OH IT 1995 JB K35 ; NOT O"'E OF INTERESTING Kt'rs 1996 eMP Al.14 i IS IT IN THE REGION 1997 JAE K35 ; ALT-FUNCTION J11.198 ADO AH.118 ; COINERT PSUEDO SUN CODt: TO RANGE 1999 MOV Al.O ; INDICATE AS SUCH 2'00'0 JMP K57 ; BUFFER_FILL 2~01 2'002 ;------ TRANSlATt: ALTERNATE SHIFT PSEUDO stAN COMS 2003 EAF4 EAt4 3ClB EAF6 7303 EAFe EAF8 ·n63FF EAFB UFB lC47 fAFO 73F9 UFF 8863E9 E80-2 E92501 2'0'04 I ALT-FUNCTION 2005 ; TEST FOR IN TAGLE 2006 1 All-CONTINUE 2'0'07 ; CtOSE-RET\JIl'N 2008 ; IGNORE THE KEY 2009 I AlT-CONTINUE 2'010 ; IN KEYPAD REGION 2011 ; IF SO. IGNOR'E 2'012 ; AL T SHIFT PSEUDO SCAN TABLE 20ll ; TRANSLATE THAT 2'014 2'015 1--"--- NOT IN ALTERNATE SHIFT fBOS £805 F6'06170004 ~ EBOA 7458 £80C 3C46 [BOE 7513 2'016 2'017 1

LOC OBJ LINE SOURCE<br />

EAID 680052<br />

EA20 E98901<br />

£.1.23<br />

EAll 80FCI0<br />

~EA26731A<br />

fAze F6D4<br />

EAZA 20261700<br />

EAZE XBa<br />

£.1.30 752C<br />

£A3l .1.01900<br />

EA35 8400<br />

EA37 88261900<br />

£AlB XOD<br />

£.1.30 741F<br />

EA3F £9.1.301<br />

EA42<br />

EA42 F604<br />

EA44 20261800<br />

EA46 E814<br />

EA4A<br />

EA4A 3eao<br />

EA4C 7310<br />

fA4E F606180008<br />

£.1.53 7417<br />

EA55 3C45<br />

EAS7 7405<br />

EA59 80261800F7<br />

EASE<br />

EASE FA<br />

EA5F 6020<br />

£.1.61 £620<br />

£.1.63<br />

EA63 01<br />

£.1.64 IF<br />

EA6S SF<br />

EA66 5£<br />

EA67 5.1.<br />

EA66 59<br />

EA69 58<br />

EA6A 58<br />

EA66 CF<br />

EA6C<br />

EA6C F606170008<br />

fA71 7503<br />

EA73 £98FOO<br />

£.1.76<br />

£A76 F606170004<br />

EA78 7431<br />

EA70 3C53<br />

~ EA7F 7520<br />

EASt C70672003412<br />

£A87 £901F5<br />

fAaA<br />

EAaA 524F5051484C4O<br />

1875 MOV AX,INS_KEY*Z56 , SET SCAN CODE INTO AH. 0 INTO Al<br />

1876 JMP '57 ; PUT INTO OUTPUT BUFFER<br />

1877<br />

1878 1------ BREAK SHIFT fOUND<br />

1879<br />

le80 K23: f BREAK-SHIFT-FOUND<br />

1881 eMP AH,SCROLL_SHIFT ; IS THIS A TOGGLE KEY<br />

1682 JAE '24 ; YEs. HAtJOlE BREAK TOGGLE<br />

1883 UOT AH i INVERT MASK<br />

1684 AND KBJLAG,AH TlJ!

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!