ASMB,L * * * * * * ************************************************************** * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. ALL RIGHTS * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- * * PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * * OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * ************************************************************** * * * * NAME: GLEN * SOURCE: 92840 - 18153 * RELOC: 92840 - 16021 * * * ************************************************************* NAM GLEN,7 92840-16021 REV.2013 790904 ******************************************************* * GLEN IS THE ASMB INTERFACE FOR THE GLEN SUBROUTINE OF * THE STROKE GENERATED CHARACTER PACKAGE. * GLEN VERIFIES THE PROPER NUMBER OF PARAMETERS HAS BEEN * PASSED IN, THEN CALLS GTEXM TO PROCESS THE ACTUAL CALL. ********************************************************** ENT GLEN EXT .OPTN,PLTER,GSOFT,GLEN1,GLEN2 EXT GASC1,GCHK ********************************************************* IAC NOP IGCB NOP ITEXT NOP ISTRT NOP ITEXL NOP DELTX NOP DELTY NOP IDCB NOP DCB17 NOP POINTER INTO IDCB(17) GETS STUFFED HERE GLEN NOP LDA GLEN JSB .OPTN DEF RTN00 DEF IAC DEF M8 DEF IDUMY NO ACTION CODE DEF D6 NUMBER OF REQUIRED PARAMETERS DEF D1 NUMBER OF OPTIONAL PARAMETERS DEF OPARM ADDRESS OF OPTIONAL PARAMETER DEF RETRN .OPTN STUFFS RETURN ADDRESS HERE RTN00 JMP GERR3 ******************************************************************** * NORMAL RETURN FROM .OPTN ************************************************************** * GRAPHICS LINK AND CHECK FOR SUSPENDED GCB. * JSB GCHK DEF RTNA DEF IGCB,I DEF ISUSP RTNA LDA ISUSP SZA JMP RETRN,I ****************************************************************** * SEE IF ITEXT CAME FROM BASIC. * JSB GASC1 DEF RTN01 DEF ITEXT,I DEF IBASC * RTN01 LDA IBASC SSA ISZ ITEXT BUMP THE ADDRESS IF THE STRING IS FROM BASIC ********************************************************************* * CALL GSOFT TO SEE IF SOFTWARE TEXT IS ENABLED. * BRANCH TO HARD IF HARDWARE TEXT IS ENABLED. * JSB GSOFT DEF RTN0 DEF IGCB,I * RTN0 SSA,RSS JMP HARD EXECUTE THIS IF SIGN A=0 ********************************************************************** * RETURN THE SOFTWARE LENGTH OF THE TEXT STRING. MAKE SURE THE USER * PASSED IN A DCB. * LDA IDCB SZA,RSS JMP GERR3 EXECUTE THIS IF A=0 *************************************************************** * DEVELOP A DEF TO DCB(17) SO YOU CAN USE THE END OF THE DCB * AS A UTILITY BUFFER. * LDA IDCB ADA D16 STA DCB17 * JSB GLEN1 DEF RTN1 DEF IGCB,I DEF ITEXT,I DEF ISTRT,I DEF ITEXL,I DEF DELTX,I DEF DELTY,I DEF IDCB,I DEF DCB17,I * RTN1 NOP JMP FINIS ******************************************************************* * HARDWARE TEXT LENGTH GETS RETURNED HERE. ******************************************************************** HARD NOP JSB GLEN2 DEF RTN2 DEF IGCB,I DEF ITEXT,I DEF ISTRT,I DEF ITEXL,I DEF DELTX,I DEF DELTY,I RTN2 NOP JMP FINIS *********************************************************************** * RESET ALL THE PARAMETERS TO 0 *********************************************************************** FINIS NOP JMP RETRN,I ******************************************************************* * NOT ENOUGH PARAMETERS. ******************************************************************* GERR3 NOP JSB PLTER DEF RTN22 DEF D97 DEF IDUMY RTN22 NOP JMP RETRN,I ************************************************************ * CONSTANTS * D16 DEC 16 D97 DEC 97 IDUMY NOP IBASC NOP M8 DEC -8 D6 DEC 6 D1 DEC 1 RETRN NOP OPARM NOP ISUSP NOP EQUALS 0 IF GCB NOT SUSPENDED END