.GLOBL IAPACK IAPACK: TST (R5)+ MOVB @(R5)+,ABYTE ;1ST CHAR IN ABYTE INC R5 ;INCREMENT REG MOVB @(R5)+,BBYTE ;2ND CHAR IN BBYTE INC R5 ;INC REG ;PACK TWO CHARS INTO BWORD IN PACKED ASCII ;CLEAR 7TH AND 8TH BITS OF OF BOTH BYTES BICB #300,ABYTE ;CLEAR REQUIRED BITS BICB #300,BBYTE ; " " " ; PUT TWO CHARS IN BWORD CLR AWORD ;CLEAR TWO WORDS CLR BWORD ; MOVB ABYTE,AWORD ;PUT 1ST CHAR IN A WORD CMP AWORD,#40 ;IS CHAR A SPACE BEQ SPACE ;YES SET TO NULL NO: SWAB AWORD ;PUT CHAR IN M.S.BYTE CLC ;CLEAR CARRY ROR AWORD ;MOVE CHAR TWO BITS RIGHT ASR AWORD ;REST OF WORD =0 MOVB BBYTE,BWORD ;2ND CHAR IN BWORD CMP BWORD,#40 ;CHAR A SPACE BEQ NULL ;YES SET NULL NEXT: BIS AWORD,BWORD ;.OR. CHARS TOGETHER MOV BWORD,R0 RTS PC SPACE: CLR AWORD ;SET TO NULL JMP NO NULL: CLR BWORD JMP NEXT ; AWORD: .WORD 0 BWORD: .WORD 0 ABYTE: .BYTE 0 BBYTE: .BYTE 0 .END