’Ć:Ł CALLTEST.BAS by Jack Thompson, Copyright 1986ż:Ł From Heath Users Group SIG courtesy Jack ThompsonK:Ł Modified for Tandy 600 by David Dunn Thomas; (compatible with ZP-150)‰ this program stores the machine code for the operationsĀ XCHG CX,DX XCHG SI,DI RETF in the string variableü CODE$ it then uses the DSVARPTR function to get the6  address of the string and uses the DBMCALL functionQ  to execute the code.W Ąl žŖ "utility.lib"r ®  store the machine code for XCHG CX,DX XCHG SI,DI RETFæ  into CODE$ń CODE$ē’–( ‡)é’–( Ń)é’–( ‡)é’–( ž)é’–( Ė)÷ & ' set mode% for a far call" (MODE%ē( /a 0 iinitialize the source and return register stringsu 1 to all blanksŖ 2‚ I%ē Ģ :SREGS$ēSREGS$é" ":ƒ I%:RREGS$ēSREGS$° 9ņ : call QREGS to put some values in the source register string <³ QREGS(SREGS$) CG D call DSVARPTR to get the address of the CODE$ stringv F³ DSVARPTR(CODE$,LENGTH%,SEGMENT%,OFFSET%)| M¢ N use DBMCALL to execute the codeÖ P³ DBMCALL(MODE%,SEGMENT%,OFFSET%,SREGS$,RREGS$)Ü W X setup a string with the names of the registers.$ ZA$ē"CXDXSIDI"* a_ b unpack and print the values for the registers.y d‘" BEFORE AFTER"Œ n‚ I%ē Ģ  Ļ £ x‘ ’ƒ(A$,I%,);"=";Ń ‚‘ ’‚("0000"é’š(ż(’ƒ(SREGS$,I%é,))),),ž Œ‘ ’‚("0000"é’š(ż(’ƒ(RREGS$,I%é,))),) –ƒ I%  