Function Hex2Bin (B : Byte) : String; Var Temp : String [8]; Pos, Mask : Byte; begin Temp := '00000000'; Pos := 8; Mask := 1; While (Pos > 0) Do begin if (B and Mask) then Temp [Pos] := '1'; Dec (Pos); Mask := 2 * Mask; end; Hex2Bin := Temp; end; Function Hex2Bin( HexByte:Byte ):String; External; {$L HEX2Bin.OBJ} Var i : Integer; begin For i := $00 to $0F do WriteLn( Hex2Bin(i) ); end. (*********************************************************************) The Assembly source ... ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; code segment Byte 'CODE' ; HEX2Bin.Asm assume cs:code ; Function Hex2Bin( HexByte :Byte ) :String; String equ dWord ptr [bp+6] HexByte equ [bp+4] public Hex2Bin Hex2Bin proc Near ; link into main TP Program push bp ; preserve mov bp,sp ; stack frame les di, String ; result String Pointer cld ; Forward scan mov cx,8 ; 8 bits in a Byte mov al,cl ; to set stosb ; binary String length mov ah, HexByte ; get the hex Byte h2b: xor al,al ; cheap zero rol ax,1 ; high bit to low bit or al,'0' ; make it ascii stosb ; put it in String loop h2b ; get all 8 bits pop bp ; restore ret 2 ; purge stack & return Hex2Bin endp code ends end ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Here's the assembled OBJ File ... Put all of this remaining message in a Text File named HEX2Bin.SCR, then Type "DEBUG < HEX2Bin.SCR" (no quotes) to create HEX2Bin.ARC; then extract HEX2Bin.OBJ using PKUNPAK or PAK ... ---------------------------- DEBUG script ---------------------------- N HEX2Bin.ARC E 0100 1A 02 48 45 58 32 42 49 4E 2E 4F 42 4A 00 5E 65 00 00 00 4A 19 E 0115 13 22 60 F2 65 00 00 00 80 0D 00 0B 68 65 78 32 62 69 6E 2E 41 E 012A 53 4D A9 96 07 00 00 04 43 4F 44 45 44 98 07 00 20 1D 00 02 02 E 013F 01 1F 90 0E 00 00 01 07 48 45 58 32 42 49 4E 00 00 00 6A 88 04 E 0154 00 00 A2 01 D1 A0 21 00 01 00 00 55 8B EC C4 7E 06 FC B9 08 00 E 0169 8A C1 AA 8A 66 04 32 C0 D1 C0 0C 30 AA E2 F7 5D C2 02 00 21 8A E 017E 02 00 00 74 1A 00 Rcx 0084 W Q ----------------------------------------------------------gbug-1.0b--