📄 asmlib.doc
字号:
.
_BX = msg; /* pointer to ASCIIZ string */
STRLEN(); /* ASMLIB subroutine */
string_length = _CX
3) Load the 80x86 registers before calling the ASMLIB subroutine.
Example:
_DX = 0; /* upper left corner of screen */
_AH = 15; /* bright white */
_SI = msg; /* pointer to ASCIIZ string */
tprint();
4) ASMLIB subroutines using the 8087 will use Turbo C's
emulation library if re-assembled with the /E option.
5) values in registers returned by ASMLIB subroutines should be used
or saved immediately; C code executed after calling an ASMLIB
subroutine may change any of the registers
6) When compiling from within the Turbo C editor, include ASMLIB.LIB
in your .PRJ file (ASMSMALL.LIB for small model, ASMHUGE.LIB for
huge model).
DOCUMENTATION
There's alot of stuff in ASMLIB, so I've tried to keep the documentation
succinct. Here's a general guide to ASMLIB's documentation:
SUBROUTINE: a brief description
Source: the source code file (and other subroutines used)
Call with: this tells you what data the subroutine expects
additional information may be found here
Returns: tells you what registers and/or flags contain useful info
Additional lines may include more specific information about
the register values returned.
Uses: registers and flags which may be changed
Supports: particular equipment or operating modes; this will not apply to
all subroutines.
Example: an example of how parameters are passed to the subroutine
and a typical use of the subroutine.
Documentation for ASMLIB subroutines is in the following files:
Subroutine description .DOC file
A$EDIT editor module used by TEdit and GEdit INPUT.DOC
ADDF4 adds two float4 values without 80x87 FLOAT.DOC
ADDF8 adds two float8 values without 80x87 FLOAT.DOC
ALLOCEMS allocate memory from Expanded Memory EMSXMS.DOC
ALLOCXMS allocate memory from XMS Extended Memory EMSXMS.DOC
ANSICOLOR returns color attribute used by ANSI device driver TEXT.DOC
BITBLOCKBYTES calculate bytes required to save a bit block GRAPHICS.DOC
BITPLANEBYTES calculate bytes to save a plane of bit block GRAPHICS.DOC
BLINKOFF turn blink attributes off TEXT.DOC
BLINKON turn blink attributes on TEXT.DOC
BREAKTRAP initialize Ctrl+Break trap SYSTEM.DOC
BREAKRELEASE de-activate Ctrl+Break trap SYSTEM.DOC
BREAKFLAG public byte flagging a Ctrl+Break keypress SYSTEM.DOC
C2F convert degrees Celcius to degrees Fahrenheit SOLVE.DOC
CHRDEL delete a character from an ASCIIZ string DATA.DOC
CHRNDEL delete a character from an n-length string DATA.DOC
CIRCLEASPECT modifies aspect ratio of circle GRAPHICS.DOC
CLEARKEY clears the keyboard's 'type-ahead' buffer INPUT.DOC
CMPF4 compare two float4 values FLOAT.DOC
CMPF8 compare two float8 values FLOAT.DOC
COLOR16 calculate color value for 16-color palette SYSTEM.DOC
COLORATTR calculates a color attribute byte DATA.DOC
CRTINFO returns video buffer, screen size, etc. TEXT.DOC
CSET centers a string in a fixed field DATA.DOC
CUBEFITF4 fit a cubic equation to a float4 point series SOLVE.DOC
CUBEFITF8 fit a cubic equation to a float8 point series SOLVE.DOC
CUBEFITI2 fit a cubic equation to an integer2 point series SOLVE.DOC
CUBEFITI4 fit a cubic equation to an integer4 point series SOLVE.DOC
CURSORCOLOR enable InColor palette, set cursor color TEXT.DOC
CURSOROFF make hardware cursor invisible at present location TEXT.DOC
CURSORON move cursor to (row, col) and update cursor shape TEXT.DOC
DAYNAME returns ASCII string for day number DATA.DOC
DEFGMODE ASMLIB uses system graphics mode (default) GRAPHICS.DOC
DEG2RAD convert degrees of arc to radians SOLVE.DOC
DISKWP determines if a floppy disk is writable DISK.DOC
DIVI2 divide one I2 number by another, returns f4 quotient FLOAT.DOC
DOSALLOC dynamic memory allocation SYSTEM.DOC
DOTBAK changes a file to a .BAK file DISK.DOC
DRAWCIRCLE draw a circle GRAPHICS.DOC
DRAWBOX draw a rectangle on a graphics screen GRAPHICS.DOC
DRAWLINE draw a line on a graphics screen GRAPHICS.DOC
DRAWMODE public byte modifying ASMLIB graphics drawing mode GRAPHICS.DOC
EMGET copy data from Expanded Memory to system RAM EMSXMS.DOC
EMPUT copy data from system RAM to Expanded Memory EMSXMS.DOC
EMSFREE determine available EMS memory EMSXMS.DOC
EMSTOTAL determine total EMS memory installed EMSXMS.DOC
ENDPROG determine size of program SYSTEM.DOC
EXENAME determine full path and name of executing program SYSTEM.DOC
F2C convert degrees Fahrenheit to degrees Celcius SOLVE.DOC
F4TOF8 converts float4 value to float8 format FLOAT.DOC
F4TOI2 converts float4 value to an integer FLOAT.DOC
F4TOI4 converts float4 value to a long integer FLOAT.DOC
F8TOF4 converts float8 value to float4 format FLOAT.DOC
FACTORIAL calculate the factorial of an integer SOLVE.DOC
FARALLOC allocates memory from a far heap SYSTEM.DOC
FARFREE releases memory allocated by FARALLOC SYSTEM.DOC
FARINIT initializes a far heap SYSTEM.DOC
FARREALLOC re-sizes a memory block in a far heap SYSTEM.DOC
FCLOSE close a file managed by ASMLIB buffered I/O system DISK.DOC
FCOPY copies one file to another DISK.DOC
FCOUNT counts the number of files matching filespec mask DISK.DOC
FCREATE create new file and initialize I/O buffer DISK.DOC
FEXIST determines if a file exists DISK.DOC
FFLUSH flushes the DOS file output buffer for specifed handle DISK.DOC
FGET read specified number of bytes from a file buffer DISK.DOC
FGETCHR read a character from a file buffer DISK.DOC
FGETSTR read an ASCII string from a file buffer DISK.DOC
FILELIST creates a list of filenames matching filespec mask DISK.DOC
FILL4, FILL4B fill a buffer with 4-byte data DATA.DOC
FILL8, FILL8B fill a buffer with 8-byte data DATA.DOC
FILLAREA fills an irregular area on a graphics screen GRAPHICS.DOC
FILLBOX draw a filled rectangle on a graphics screen GRAPHICS.DOC
FILLPATTERN define an optional pattern for FillArea & FillBox GRAPHICS.DOC
FINDDATE returns date of file found with FindFirst/FindNext DISK.DOC
FINDFIRST find first file matching filespec mask DISK.DOC
FINDMONO determine if monochrome monitor is installed SYSTEM.DOC
FINDNEXT find next file matching filespec mask DISK.DOC
FINDTIME returns time of file found with FindFirst/FindNext DISK.DOC
FLOPPIES determines the number of floppy drives installed SYSTEM.DOC
FLOPPYTYPE determines the type of floppy drive installed SYSTEM.DOC
FOPEN open a file and initilaize buffered I/O DISK.DOC
FORCEGMODE force ASMLIB to use a graph mode GRAPHICS.DOC
FPRIMEI2 calculates the derivative of a polynomial function SOLVE.DOC
FPRIMEF4 calculates the derivative of a polynomial function SOLVE.DOC
FPUT write specified data to output file buffer DISK.DOC
FPUTCHR writes a character to output file buffer DISK.DOC
FPUTCRLF writes a CR+LF pair to output file buffer DISK.DOC
FPUTSTR writes a string to output file buffer DISK.DOC
FREEEMS release Expanded Memory handle EMSXMS.DOC
FREEXMS release XMS Extended Memory handle EMSXMS.DOC
FSEEK move file pointer for file opened by FOPEN DISK.DOC
FSIZE determines the size of an open file DISK.DOC
FSTRISTR searches for a string in a disk file (case-insensetive)DATA.DOC
FSTRSTR searches for a string in a disk file (case-sensetive) DATA.DOC
FVALUE calculate future value of an even cash flow SOLVE.DOC
GBASESEG change ASMLIB graphics default base segment GRAPHICS.DOC
GCENTER centers a string on a graphics screen GRAPHICS.DOC
GCLEAR clears the active portion of a graphics screen GRAPHICS.DOC
GCOLOR establish color used by ASMLIB graphics GRAPHICS.DOC
GCOPY copies one page of graphics memory to another GRAPHICS.DOC
GCURSOR simulate text-mode cursor on graphics screen GRAPHICS.DOC
GEDIT string editor for graphics modes INPUT.DOC
GETBITBLOCK saves a portion of a graphics screen in memory GRAPHICS.DOC
GETBITPLANE saves one plane of a bit block in memory GRAPHICS.DOC
GETCMD isolates multiple command line parameters DATA.DOC
GETCPU determines the computer's CPU chip SYSTEM.DOC
GETCRT determine active monitor SYSTEM.DOC
GETDOT determine pixel value on graphics screen GRAPHICS.DOC
GETKEY returns next key pressed INPUT.DOC
GETSCREEN save screen image in memory to restore later TEXT.DOC
GETVIEW returns a pointer to graphics view area data GRAPHICS.DOC
GLOAD loads a graphics screen saved by GSave GRAPHICS.DOC
GPAGE changes active and displayed graphics page GRAPHICS.DOC
GPICKF select a filename from a list (graphics mode) INPUT.DOC
GPICKSTR select a string from a list (graphics mode) INPUT.DOC
GPRINT prints ASCIIZ string on a graphics screen GRAPHICS.DOC
GPRINTDOWN prints ASCIIZ string vertically on graph screen GRAPHICS.DOC
GPRINTDOWNX print string vertically on graph screen, 2x width GRAPHICS.DOC
GPRINTDOWN2X print string vertically on graph screen, 2x size GRAPHICS.DOC
GPRINTUP prints ASCIIZ string vertically on graph screen GRAPHICS.DOC
GPRINTUPX print string vertically on graph screen, 2x width GRAPHICS.DOC
GPRINTUP2X print string vertically on graph screen, 2x sixe GRAPHICS.DOC
GPRINTX print string on a graphics screen, double width GRAPHICS.DOC
GPRINT2X print string on a graphics screen, double size GRAPHICS.DOC
GSAVE saves a graphics screen as a disk file GRAPHICS.DOC
GUCURSOR simulate underscore cursor on graphics screen GRAPHICS.DOC
HALLOC allocates memory from near heap SYSTEM.DOC
HFREE releases memory allocated by HALLOC SYSTEM.DOC
HGRAPH establish Hercules graphics mode using two pages MODE.DOC
HGRAPH0 establish Hercules graphics mode using one page MODE.DOC
HIDEMOUSE make mouse cursor disappear INPUT.DOC
HINIT initializes near heap SYSTEM.DOC
HMAX determines maximum block size available in near heap SYSTEM.DOC
HRAM8043 establish 80-column, 43-row RamFont mode MODE.DOC
HRAM9025 establish 90-column, 25-row RamFont mode MODE.DOC
HRAM9043 establish 90-column, 43-row RamFont mode MODE.DOC
HREALLOC re-sizes a memory block in the near heap SYSTEM.DOC
HSCROLL scrolls a portion of the screen left or right TEXT.DOC
HTEXT establish Hercules text mode MODE.DOC
I2TOF4 convert a 2-byte integer to float4 format FLOAT.DOC
I2TOSTR convert a 2-byte integer to an ASCIIZ string DATA.DOC
I4TOF4 convert a 4-byte integer to float4 format FLOAT.DOC
I4TOSTR convert a 4-byte integer to an ASCIIZ string DATA.DOC
ISALPHA determines if a keycode returned by GetKey is A - z INPUT.DOC
ISANSI determines if ANSI is loaded and active SYSTEM.DOC
ISATT determines if ATT 6300 display card is installed SYSTEM.DOC
ISDIGIT determines if a keycode returned by GetKey is 0 - 9 INPUT.DOC
ISEMS determines if an EMS driver is loaded EMSXMS.DOC
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -