Index for interrupt INT 88
Table of Contents by Order
88 - INT 88 - IBM ROM BASIC - used while in interpreter
88 - INT 88h - WANG PC - GET CONFIGURATION
88--00 - INT 88 - APL*PLUS/PC - CREATE OBJECT OF ARBITRARY RANK OR SHAPE
88--01 - INT 88 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE
88--02 - INT 88 - APL*PLUS/PC - CREATE INTEGER SCALAR/VECTOR/MATRIX <64K IN SIZE
88--08 - INT 88 - APL*PLUS/PC - CREATE FLOATING POINT SCALAR/VECTOR/MATRIX <64K IN SIZE
88--F5 - INT 88 - APL*PLUS/PC - FORCE OBJECT INTO REAL WORKSPACE FROM VIRTUAL
88--F6 - INT 88 - APL*PLUS/PC - MAKE NAME IMMUNE FROM OUTSWAPPING
88--F7 - INT 88 - APL*PLUS/PC - MAKE NAME ELIGIBLE FOR OUTSWAPPING
88--F8 - INT 88 - APL*PLUS/PC - REPORT WHETHER NAME IS ELIGIBLE FOR OUTSWAPPING
88--F9 - INT 88 - APL*PLUS/PC - DETERMINE NAME STATUS
88--FC - INT 88 - APL*PLUS/PC - DETERMINE IF MEMORY AVAIL WITHOUT GARBAGE COLLECTION
88--FD - INT 88 - APL*PLUS/PC - PERFORM GARBAGE COLLECTION AND RETURN AVAILABLE MEMORY
88--FE - INT 88 - APL*PLUS/PC - CREATE NAME
88--FF - INT 88 - APL*PLUS/PC - DETERMINE NAME STATUS
INT 88 - IBM ROM BASIC - used while in interpreter Notes: called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM BASIC.COM/BASICA.COM do not restore vector on termination SeeAlso: INT 87"BASIC",INT 89"BASIC"Top
INT 88h - WANG PC - GET CONFIGURATION AL = get info type 01h Get System Console Return: ES:BX -> Configuration structure (see #04089) else: ??? SeeAlso: PORT 1010h"Wang",MEM F000h:0000h,MEM FC00h:3FC2h,INT 21/AX=4402h Format of Wang PC System Console configuration structure: Offset Size Description (Table 04089) 00h WORD version 02h WORD memory size 04h 2 WORDs reserved 08h WORD number of screens (1..4) 0Ah 4 WORDs offset of console screen info structure 1..4 within configuration structure's segment (ES) (see #04090) Format of Wang PC Screen Info structure: Offset Size Description (Table 04090) 00h BYTE state (bit 7 set appears to indicate the active console that is currently attached to the screen) 01h BYTE scanoff 02h WORD buffer segment 04h BYTE colors 05h BYTE row 06h BYTE column 07h BYTE attribute 00h = ??? 02h = ??? 0Fh = white on black 08h BYTE auxiliary mode 09h BYTE auxiliary mode 2 SeeAlso: #04089Top
INT 88 - APL*PLUS/PC - CREATE OBJECT OF ARBITRARY RANK OR SHAPE AL = 00h BX = STPTR of the variable to be assigned ES:SI -> model of type, rank, and shape (see #03978) Return: ES:DI -> first data byte of object DX:CX = number of elements in the object SeeAlso: INT 88/AL=01h,INT 88/AL=08h,INT C8"APL" Format of APL*PLUS/PC shape model: Offset Size Description (Table 03978) 00h BYTE type 01h character (2-byte dimension sizes) 02h integer (2-byte dimension sizes) 08h floating point (2-byte dimension sizes) 11h character (4-byte dimension sizes) 12h integer (4-byte dimension sizes) 18h floating point (4-byte dimension sizes) 01h BYTE rank 02h (D)WORD first dimension of shape N (D)WORD second dimension of shape ...Top
INT 88 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE AL = 01h AH = rank BX = STPTR of the variable to be assigned CX = first dimension (if any) DX = second dimension (if any) Return: ES:DI -> object CX = number of elements in the object Note: each dimension must be 32767 or smaller SeeAlso: AL=00h,AL=02h,AL=08h,INT C8"APL"Top
INT 88 - APL*PLUS/PC - CREATE INTEGER SCALAR/VECTOR/MATRIX <64K IN SIZE AL = 02h AH = rank BX = STPTR of the variable to be assigned CX = first dimension (if any) DX = second dimension (if any) Return: ES:DI -> object CX = number of elements in the object Note: each dimension must be 32767 or smaller SeeAlso: AL=01h,AL=08h,INT C8"APL"Top
INT 88 - APL*PLUS/PC - CREATE FLOATING POINT SCALAR/VECTOR/MATRIX <64K IN SIZE AL = 08h AH = rank BX = STPTR of the variable to be assigned CX = first dimension (if any) DX = second dimension (if any) Return: ES:DI -> object CX = number of elements in the object Note: each dimension must be 32767 or smaller SeeAlso: AL=01h,AL=02h,INT C8"APL"Top
INT 88 - APL*PLUS/PC - FORCE OBJECT INTO REAL WORKSPACE FROM VIRTUAL AL = F5h BX = STPTR of object SeeAlso: INT C8"APL"Top
INT 88 - APL*PLUS/PC - MAKE NAME IMMUNE FROM OUTSWAPPING AL = F6h BX = STPTR of object SeeAlso: AL=F7h,AL=F8h,INT C8"APL"Top
INT 88 - APL*PLUS/PC - MAKE NAME ELIGIBLE FOR OUTSWAPPING AL = F7h BX = STPTR of object SeeAlso: AL=F6h,AL=F8h,INT C8"APL"Top
INT 88 - APL*PLUS/PC - REPORT WHETHER NAME IS ELIGIBLE FOR OUTSWAPPING AL = F8h BX = STPTR of object Return: BX = name's outswapping status 0000h eligible 0001h not eligible SeeAlso: AL=F6h,AL=F7h,INT C8"APL"Top
INT 88 - APL*PLUS/PC - DETERMINE NAME STATUS AL = F9h ES:SI -> name CX = length of name Return: CF set if name ill-formed or already in use BX = STPTR if already in symbol table CF clear if name is available for use BX = 0000h Note: does not force the name into the workspace SeeAlso: AL=FEh,AL=FFh,INT C8"APL"Top
INT 88 - APL*PLUS/PC - DETERMINE IF MEMORY AVAIL WITHOUT GARBAGE COLLECTION AL = FCh BX = amount of memory needed (paragraphs) Return: CF clear if memory available CF set if a workspace compaction is required SeeAlso: AL=FDh,INT C8"APL"Top
INT 88 - APL*PLUS/PC - PERFORM GARBAGE COLLECTION AND RETURN AVAILABLE MEMORY AL = FDh Return: BX = number of paragraphs available in workspace SeeAlso: AL=FCh,INT C8"APL"Top
INT 88 - APL*PLUS/PC - CREATE NAME AL = FEh ES:SI -> name CX = length of name Return: BX = STPTR of name DX = interpreter's data segment SeeAlso: AL=F9h,AL=FFh,INT C8"APL"Top
INT 88 - APL*PLUS/PC - DETERMINE NAME STATUS AL = FFh ES:SI -> name CX = length of name Return: CF set if name ill-formed or already in use BX = STPTR if already in symbol table CF clear if name is available for use BX = 0000h Note: forces the name into the workspace and makes it immune from outswapping SeeAlso: AL=F9h,AL=FEh,INT C8"APL"Top