home *** CD-ROM | disk | FTP | other *** search
- APR 1988 FAT-VIDEO 1.21 SETVM Page V-1
-
-
-
- SETVM(MODE)-Set the Video Mode
-
- Usage:
-
- call setvm(mode)
-
- integer*2 mode
-
- inputs: mode
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This program sets the video mode. The available modes are
- defined below.
-
- See also getmod().
-
- mode Display
- ---- --------
- 00 = 40*25 text B&W,cga
- 01 = 40*25 color text,cga
- 02 = 80*25 B&W text
- 03 = 80*25 color text
- 04 = 320*200 4-color,cga
- 05 = " " " ,color burst off
- 06 = 640*200 2-color,cga
- 07 = Mono & EGA display
- 08 = 160*200 pc jr
- 09 = 320*200 pc jr
- 0A = 640*200 pc jr
- 0D = 320*200 EGA
- 0E = 640*200 16-color EGA
- 0F = 640*350 mono graphics,EGA
- 10 = 640*350 4/16 color graphics,EGA
- (4/16-depends on ram)
-
- Int 10h, fx-00h
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 SETCP Page V-2
-
-
-
- SETCP(ROW,COL,PAGE) - Set Cursor Position
-
- Usage:
-
- call setcp(row,col,page)
-
- integer*2 row,col,page
-
- inputs: page,row,col
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- This subroutine sets the cursor position to
- the values given in row, column and page. The row
- values are 0-23, the column values are 0-39 or 0-79
- depending on the text mode in use.
- The cursor may be located in graphics modes using
- this function the same as in text modes. See the
- setdp() function regarding pages.
-
- See also getcp().
-
- Int 10h, fx-02h
-
- CGA, Mono, EGA
-
-
-
-
- APR 1988 FAT-VIDEO 1.21 GETCP Page V-3
-
-
-
- GETCP(ROW,COL,PAGE) - Get Cursor Position
-
- Usage:
-
- call getcp(row,col,page)
-
- integer*2 row,col,page
-
- inputs: page
-
- returns: row,col
-
- MS-Fortran 4.0 Large Model
-
- This subroutine gets the cursor position for
- the specified page, and returns row, and column.
- The row values are 0-23, the column values are
- 0-39 or 0-79 depending on the text mode in use.
- See the setdp() function regarding pages in the
- various adapters.
-
- See also setcp().
-
- Int 10h, fx-03h
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 SETDP Page V-4
-
-
-
- SETDP(PAGE) - SET the Display Page
-
- Usage:
-
- call setdp(page)
-
- integer*2 page
-
- inputs: page
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine sets the active display page.
- The Mono Adapter only has 1 display page. The CGA
- adapter has 8 display pages in modes 0 and 1, and
- 4 text display pages in modes 2 and 3. See the chart
- below for other modes.
-
- See also getmod().
-
- Page Modes(hex)
- ----- ----------
- 0-7 00-01 CGA
- 0-3 02-03 CGA
- 0-7 02-03 EGA
- 0-7 0D EGA
- 0-3 0E EGA
- 0-1 0F EGA
- 0-1 10h EGA
-
- Int 10h, fx-05h
-
- CGA, EGA
- APR 1988 FAT-VIDEO 1.21 SCWUP Page V-5
-
-
- SCWUP(LINES,ATTR,ULR,ULC,LRR,LRC) - Scroll Window Up
-
- Usage:
-
- call scwup(lines,attr,ulr,ulc,lrr,lrc)
-
- integer*2 lines,attr,ulr,ulc,lrr,lrc
-
- inputs: lines,attr,ulr,ulc,lr,lrc
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine scrolls up the rectangular area defined
- by ulr,ulc and lrr,lrc the specified number of lines,
- filling the blank lines with the background color defined in
- the attribute byte.
-
- The attribute byte may be set by setab(), or from a
- call to getac().
-
- See also scwdn(), cls(), getmod(), setvm().
-
- lines = 0-25 no. of lines to scroll(0 -> clears window)
- attr = attribute byte to use, for background color
- ulr = 0-24 upper left y-coord(row) corner of scroll region
- ulc = 0-79 " x " " (col) "
- lrr = 0-24 lower right y-coord(row)
- lrc = 0-79 " " x-coord(col)
-
- Int 10h, fx-06h
-
- CGA, Mono, EGA
-
- APR 1988 FAT-VIDEO 1.21 SCWDN Page V-6
-
-
-
- SCWDN(LINES,ATTR,ULR,ULC,LRR,LRC) - Scroll Window Down
-
- Usage:
-
- call scwdn(lines,attr,ulr,ulc,lrr,lrc)
-
- integer*2 lines,attr,ulr,ulc,lrr,lrc
-
- inputs: lines,attr,ulr,ulc,lrr,lrc
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine scrolls down the rectangular area defined
- by ulr,ulc and lrr,lrc the specified number of lines,
- filling the blank lines with the background color defined in
- the attribute byte.
-
- The attribute byte may be set by setab(), or returned from a
- call to getac().
-
- See also scwup(), cls(), getmod(), setvm().
-
- lines = 0-25 no. of lines to scroll(0 -> clears window)
- attr = attribute byte to use, for background color
- ulr = 0-24 upper left y-coord(row) corner of scroll region
- ulc = 0-79 " x " " (col) "
- lrr = 0-24 lower right y-coord(row)
- lrc = 0-79 " " x-coord(col)
-
- Int 10h, fx-07h
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 GETAC Page V-7
-
-
-
- GETAC(ATTR,KAR,PAGE) - Get the Attribute and Character at the
- cursor.
-
- Usage:
-
- call getac(attr,kar,page)
-
- integer*2 attr,kar,page
-
- inputs: page
-
- returns: attr,kar
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine gets the attribute and ascii character code,
- or extended character code, at the current cursor position. The
- display page is not needed in graphics modes. In graphics modes
- if the character is not recognized, a 0 is returned.
-
- This function will return the ascii or extended code in either
- text or graphics modes.
-
- See also getab(), wrtac(), wrtacp(), wrtas(), wrtasp().
- wprint(), wprnas(), setab()
-
- attr = attribute byte, as output by setab()
- kar = character ascii code
- Page = legal Page for adapter in use
-
- Int 10h, fx-08h
-
- CGA, Mono, EGA
-
- APR 1988 FAT-VIDEO 1.21 WRTAC Page V-8
-
-
- WRTAC(ATTR,KAR,PAGE) - Write Attribute and Character at the cursor.
-
- Usage:
-
- call wrtac(attr,kar,page)
-
- integer*2 attr,kar,page
-
- inputs: attr,kar,page
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine writes the attribute and character at the
- current cursor position. The attribute is the output of getac,
- or of setab. This function works in text and graphics modes.
- The cursor does not advance automatically. The attribute
- controls the color of the foreground, background, intensity,
- and blinking.
- The special codes backspace, carriage return, linefeed
- and bell are not recognized and do cause characters to be
- printed.
-
- Text Mode:
-
- The attribute byte can be defined by setab, and both fore
- and back should be specified. The values for the foreground
- color may be 0-15, background 0-7, blink 0 or 1, and inten
- 0 or 1.
-
- Valid attributes in Mono are:
- 1) Normal 7-foreground, 0-background
- 2) Underlined 1-foreground, 0-background
- 3) Reverse 0-foreground, 7-background
- 4) Invisible 0-foreground, 0-backgound
-
- Blinking and Intensity work as well, and may be combined
- with the above foreground/backgound combinations.
-
-
- APR 1988 FAT-VIDEO 1.21 WRTAC Page V-9
-
-
-
- Graphics Mode:
-
- The color attribute byte should be the foreground color
- 0-15. If bit 7 is set the color is xor'ed with the background,
- thus assuring visibility. The attribute byte may be formed
- using setab, by inputting the fore color(0-15), 0 for the back
- color, 0 for inten, and a 1 for blink to xor the color, or 0
- in blink not to.
-
- Page need not be specified in graphics mode.
-
- See also getab(), getac(), wrtacp(), wrtas(), wrtasp().
- wprint(), wprnas(), setab()
-
- Note: To set the background and border color in graphics
- see setpal(),setbc().
-
- attr = attribute byte
- kar = character ascii code
- Page = legal Page for adapter in use
-
- Int 10h, fx-09h
-
- CGA, Mono, EGA
-
- APR 1988 FAT-VIDEO 1.21 WRTACP Page V-10
-
-
- WRTACP(ATTR,KAR,ROW,COL,PAGE) - Write Attribute and Character at
- the position given.
-
- Usage:
-
- call wrtacp(attr,kar,row,col,page)
-
- integer*2 attr,kar,row,col,page
-
- inputs: attr,kar,row,col,page
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine writes the attribute and character at the
- defined cursor position. The attribute is the output of getac,
- or of setab. This function works in text and graphics modes.
- The cursor does not advance automatically. The attribute
- controls the color of the foreground, background, intensity,
- and blinking.
-
- The special codes--backspace, carriage return, linefeed
- and bell--are not recognized and do cause characters to be
- printed.
-
- Text Mode:
-
- The attribute byte can be defined by setab, and both fore
- and back should be specified. The values for the foreground
- color may be 0-15, background 0-7, blink 0 or 1, and inten
- 0 or 1.
-
- Note: To set the border color in text see setpal().
-
- Graphics Mode:
-
- The color attribute byte should be the foreground color
- 0-15. If bit 7 is set, the color is xor'ed with the
- background thus assuring visibility. The attribute byte
- may be formed using setab by inputting the fore color (0-15),
- 0 for the back color, 0 for inten, and 1 for blink to xor the
- color, or 0 in blink not to.
-
- Page need not be specified in graphics mode.
-
- See also getab(), wrtac(), getac(), wrtas(), wrtasp().
- wprint(), wprnas(), setab()
-
- APR 1988 FAT-VIDEO 1.21 WRTACP Page V-11
-
-
-
-
-
- Note: To set the background and border color in graphics
- see setpal().
-
- attr = attribute byte
- kar = character ascii code
- row = row(0-24)
- col = col(0-79)
- Page = legal page for the adapter in use.
-
- Note: This function is a composite of setcp(), and wrtac().
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 WRTCH Page V-12
-
-
- WRTCH(KAR,COLOR,PAGE) - Write a character at the curren cursor
- position.
- Usage:
-
- call wrtch(kar,color,page)
-
- integer*2 kar,color,page
-
- inputs: kar,color,page
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine writes the character at the current
- cursor position. In text mode color is not used.
-
- In graphics mode the color of the foreground does need
- to be specified.
-
- The special codes backspace, carriage return, linefeed
- and bell are not recognized and do cause characters
- to be printed.
-
- kar = character ascii code
- color = foreground color in graphics
- Page = legal page for adapter in use
-
- Int 10h, fx-0Ah
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 SETPAL Page V-13
-
-
- SETPAL(ID,COLOR) - Set Palette, Border, Background
-
- Usage:
-
- call setpal(id,color)
-
- integer*2 id,color
-
- inputs: id,color
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
- This subroutine sets the border color if in text mode, or the
- border and background color if in graphics mode. In either mode,
- it may also be used to select the active color palette for the
- 4-color graphics mode.
- This function only works in the medium resolution graphics
- display (mode 4), on the CGA adapter. The Pcjr or a EGA adapter
- is required in text modes. To set the CGA border color in text
- modes use setbc().
-
- Text Modes:
- ID = 0 -> sets border color - EGA only
- 1 -> sets palette to use
- COLOR = 0-15 for ID = 0 set border color
- 0-1 for ID = 1 set palette
-
- Graphics Modes:
- ID = 0 -> sets color of background and border CGA,EGA
- 1 -> sets palette to use
- COLOR = 0-3 for ID = 0, in mode4
- 0-1 for ID = 1
-
- palette 0:
- color 0 = current background
- 1 = green
- 2 = red
- 3 = brown
- palette 1:
- color 0 = current background
- 1 = cyan
- 2 = magenta
- 3 = white
-
- Int 10h, fx-0Bh
-
- CGA
- APR 1988 FAT-VIDEO 1.21 WRTGP Page V-14
-
-
- WRTGP(COLOR,ROW,COL) - Write Graphics Pixel.
-
- Usage:
-
- call wrtgp(color,row,col)
-
- integer*2 color,row,col
-
- inputs: color,row,col
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine writes the graphic pixel at the specified row
- and column with the given color.
-
- color = legal pixel values: in mode 4,5 med res(0-3)
- in mode 6 high res(0-1)
- other modes, see your EGA manual.
- row = row(y) coord
- modes: 4,6,0Dh,0Eh(0-199)
- modes: 0Fh-10h(0-349)
-
-
- col = column(x) coord:
- modes: 4,5,0Dh (0-319)
- modes: 6,0Eh,10h(0-639)
-
- See also getgp().
-
- Int 10h, fx-0Ch
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 GETGP Page V-15
-
-
- GETGP(COLOR,ROW,COL) - Get Graphics Pixel Color.
-
- Usage:
-
- call getgp(color,row,col)
-
- integer*2 color,row,col
-
- inputs: row,col
-
- returns: color
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine reads the graphic pixel at the specified row
- and column with the given color.
-
- color = legal pixel values: in mode 4,5 med res(0-3)
- in mode 6 high res(0-1)
- EGA - see your manual.
- row = row(y) coord
- modes: 4,6,0Dh,0Eh(0-199)
- modes: 0Fh-10h(0-349)
-
- col = column(x) coord:
- modes: 4,5,0Dh (0-319)
- modes: 6,0Eh,10h(0-639)
-
- Int 10h, fx-0Dh
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 CHTEL Page V-16
-
-
- CHTEL(CHAR,PAGE,COLOR) - Write a Character in Teletype mode.
-
- Usage:
-
- call chtel(char,page,color)
-
- integer*2 char,page,color
-
- inputs: char,page,color
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine writes a character to the specified
- page, in the specified foreground color, in graphics mode.
-
- This function advances the cursor after each write.
- Automatic line wrapping and scrolling are also provided.
-
- The special codes--backspace, carriage return, linefeed
- and bell--are recognized and do not cause characters
- to be printed.
-
- CHAR = character to write.
- PAGE = Page to write to, not needed in graphics modes.
- COLOR = color of foreground of character, in graphics only.
-
- See also wrtch().
-
- Int 10h, fx-0Eh
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 GETMOD Page V-17
-
-
-
- GETMOD(MODE,NCOL,PAGE) - Get Mode, Number of Columns, and active page.
-
- Usage:
-
- call getmod(mode,ncol,page)
-
- integer*2 mode,ncol,page
-
- inputs: none
-
- returns: mode,ncol,page
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine gets the current screen mode, number of columns
- on screen, and display page.
-
- See also setvm().
-
- mode Display
- ---- --------
- 00 = 40*25 text B&W,cga
- 01 = 40*25 color text,cga
- 02 = 80*25 B&W text
- 03 = 80*25 color text
- 04 = 320*200 4-color,cga
- 05 = " " " ,color burst off
- 06 = 640*200 2-color,cga
- 07 = Mono & EGA display
- 08 = 160*200 pc jr
- 09 = 320*200 pc jr
- 0A = 640*200 pc jr
- 0D = 320*200 EGA
- 0E = 640*200 16-color EGA
- 0F = 640*350 mono graphics,EGA
- 10 = 640*350 4/16 color graphics,EGA
- (4/16-depends on ram)
- EGA,VGA: See your manual.
-
- mode = active mode
- ncol = 40 or 80 columns
- Page = active page
-
-
- Int 10h, fx-0Fh
-
- CGA, Mono, EGA
-
- APR 1988 FAT-VIDEO 1.21 SETAB Page V-18
-
-
- SETAB(ATTR,FOR,BACK,INT,BLINK) - Set the Attribute Byte.
-
- Usage:
-
- call setab(attr,fore,back,int,blink)
-
- integer*2 attr,fore,back,int,blink
-
- inputs: fore,back,int,blink
-
- returns: attr
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine forms an attribute byte from the input
- foreground, background, intensity, and blink bytes.
-
- See also getab().
-
- ATTR = attribute byte
- FORE = foreground color: (0-15), B&W: (0,1,7)
- BACK = background color: (0-7), B&W: (0,7)
- INT = intensity 0-normal, 1-high
- BLINK = blinking 0-off, 1-on
-
- Colors
- ------
- 0 Black 8 Gray
- 1 Blue 9 Light Blue
- 2 Green 10 Light Green
- 3 Cyan 11 Light Cyan
- 4 Red 12 Pink
- 5 Magenta 13 Light Magenta
- 6 Brown 14 Yellow
- 7 White 15 Bright White
-
- Int none
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 GETAB Page V-19
-
-
- GETAB(ATTR,FORE,BACK,INT,BLINK) - Get the Attribute Byte Values.
-
- Usage:
-
- call getab(attr,fore,back,int,blink)
-
- integer*2 attr,fore,back,int,blink
-
- inputs: attr
-
- returns: fore,back,int,blink
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This subroutine determines from the attribute byte the
- input foreground, background, intensity, and blink bytes.
-
- See also setab().
-
- ATTR = attribute byte
- FORE = foreground color: (0-15), B&W: (0,1,7)
- BACK = background color: (0-7), B&W: (0,7)
- INT = intensity 0-normal, 1-high
- BLINK = blinking 0-off, 1-on
-
- Colors
- ------
- 0 Black 8 Gray
- 1 Blue 9 Light Blue
- 2 Green 10 Light Green
- 3 Cyan 11 Light Cyan
- 4 Red 12 Pink
- 5 Magenta 13 Light Magenta
- 6 Brown 14 Yellow
- 7 White 15 Bright White
-
- Int none
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 WRTAS Page V-20
-
-
- WRTAS(ATTR,STRING) - Write Attribute and String at the cursor.
-
- Usage:
-
- call wrtas(attr,string)
-
- integer*2 attr
- character*80 string
-
- inputs: attr,string
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This routine writes a string to the screen using the
- attribute byte given. Special characters are not recognized,
- and are all printed. No carriage return, linefeeds or
- backspace functions work with this function. The string is
- written at the current cursor position.
-
- In graphics mode, if bit 7 is set in the attribute byte,
- that is if blink is set in a call to setab() and you are in
- graphics mode, then the foreground color is xor'ed with the
- background screen to ensure the character is visible. In text
- mode, the blink byte simply causes the character to blink. Any
- input string must end with a character(0), the null character,
- as shown below.
-
- See also wrtasp(), wrtac(), wrtacp().
-
- character*80 string
- string = 'text'//char(0) Most compilers allow this.
- 'text`' All compilers allow this.
- 'text'C Microsoft only.
-
- ATTR = attribute byte define by setab()
- STRING = N-byte string terminated with null character
-
- Int none
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 WRTASP Page V-21
-
-
-
- WRTASP(ATTR,STRING,ROW,COL,PAGE) - Write the Attribute
- and String at Position.
-
- Usage:
-
- call wrtasp(attr,string,row,col,page)
-
- integer*2 attr,row,col,page
- character*n string
-
- inputs: attr,string,row,col,page
-
- returns: none
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This routine writes a string to the screen using the attribute
- byte given. Special characters are not recognized, and are all
- printed. No carriage return, linefeeds or backspace functions
- work with this function. The string is written at the row, column
- and page position specified on input. This function is otherwise
- identical to wrtas().
-
- In graphics mode, if bit 7 is set in the attribute byte, that
- is if blink is set in a call to setab() and were in graphics mode,
- then the foreground color is xor'ed with the background screen to
- ensure the character is visible. In text mode, the blink byte
- simply causes the character to blink. Any input string must end
- with a character(0), the null character, as shown below.
-
- character*80 string
- string = 'text'//char(0) Most compilers allow this.
- 'text`' All compilers allow this.
- 'text'C Microsoft Only.
-
- See also wrtas(), wrtac(), wrtacp().
-
- ATTR = attribute byte define by setab()
- STRING = N-byte string terminated with null character
-
- Int none
-
- CGA, Mono, EGA
- APR 1988 FAT-VIDEO 1.21 PEEKB Page V-22
-
-
-
-
- PEEKB(OFF,SEG,VAL) - Get BYTE at SEG:OFF, anywhere in memory.
-
- Usage:
-
- call peekb(off,seg,val)
-
- integer*2 off,seg or integer*4 off,seg
- integer*2 val
-
- inputs: off,seg
-
- returns: val
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This routine peeks at the byte located at seg:off and places it
- in the lower byte of VAL.
- This function must pass an integer*2 for VAL, and an integer*2 or
- integer*4 for off and seg. If off and/or seg is passed
- as an integer*4, only the lower word is used. Seg and off must be
- declared as integer*4 if they exceed +32k or -32k, as this is the
- largest integer*2 value Fortran can assign. That is if you
- explicitly declare seg= #B800 (hexadecimal cga screen address),
- then seg must be declared as integer*4 or else the compiler will
- assign a negative value to seg. In general, just declare any seg
- definitions as integer*4. Note: If a video function returns a
- segment address for later use it may be declared integer*2 in all
- cases, as the video functions treat integer*2 values as 0 through
- +64k (unsigned integers).
-
- See also peekw(), pokeb(),pokew(), allmem(), fremem().
-
-
- CGA, Mono, EGA
-
-
- APR 1988 FAT-VIDEO 1.21 PEEKW Page V-23
-
-
-
- PEEKW(OFF,SEG,VAL) - Get WORD at SEG:OFF, anywhere in memory.
-
- Usage:
-
- call peekw(off,seg,val)
-
- integer*2 off,seg or integer*4 off,seg
- integer*2 val
-
- inputs: off,seg
-
- returns: val
-
- MS-Fortran 4.0 Large Model
-
- Description:
-
- This routine peeks at the word located at seg:off and places it
- in the variable VAL. This function must be passed an integer for
- VAL, and an integer*2 or integer*4 for off and seg. If off and/or
- seg is passed as an integer*4, only the lower VAL is altered. Seg
- and off must be declared as integer*4 if they exceed +32k or -32k,
- as this is the largest integer*2 value Fortran can assign. That is
- if you explicitly declare seg= #B800 (hexadecimal cga screen
- address), then seg must be declared as integer*4, or else the
- compiler will assign a negative value to seg. In general, just
- declare any seg definitions as integer*4. Note: If a video
- function returns a segment address for later use, it may be
- declared integer*2 in all cases as the video functions treat
- integer*2 values as 0 through +64k (unsigned integers).
-
- See also peekb(), pokeb(),pokew(),allemm(),fremem().
-
- Off = offset
- Seg = segment paragraph
- Val = returned
-
- Int none
-
- CGA, Mono, EGA
-
-