home *** CD-ROM | disk | FTP | other *** search
/ Power Programming / powerprogramming1994.iso / progtool / pascal / tpas2msc.arc / RUNTIME.DOC < prev    next >
Text File  |  1987-12-01  |  26KB  |  918 lines

  1.            GLOCKENSPIEL TURBO PASCAL(TM)-TO-QUICKC(TM) TRANSLATOR
  2.                                   VERSION 1.0
  3.                                   RUNTIME.DOC
  4.  
  5.  
  6. This document describes, in alphabetical order, the library functions used in 
  7. C files output by the Glockenspiel Turbo Pascal-to-C Translator.  
  8. These functions are included in the T2C.LIB library provided with the translator.
  9.  
  10.  
  11. chk_err()
  12. =========
  13. Used to simulate the Turbo Pascal $I+ and $I- compiler directives.
  14.  
  15.  
  16. int getcur(int *, int *)
  17. ========================
  18. Returns the current cursor coordinates (row and column, respectively) in the
  19. variables passed as arguments.
  20.  
  21.  
  22. map_err(int)
  23. ============
  24. Used by T2CF_ioresult().
  25.  
  26.  
  27. setcur(int, int)
  28. ================
  29. Positions the cursor at the given coordinates. Used by gotoxy() and other
  30. functions.
  31.  
  32.  
  33. T2C_setup_delay()
  34. =================
  35. Calculates the loop size necessary for a millisecond delay.  This function is
  36. always called at the start of the C program so that no conflicts arise between
  37. uses of the timer chip for sound and delay.
  38.  
  39.  
  40. T2CD_chdir(char *)
  41. ==================
  42. Moves to the specified directory.
  43.  
  44.  
  45. T2CD_getdir(int, char *)
  46. =======================
  47. Obtains the current directory of the drive specified by the first argument and
  48. returns its name in the variable supplied as the second argument.
  49.  
  50.  
  51. T2CD_mkdir(char *)
  52. =================
  53. Creates a new directory.
  54.  
  55.  
  56. T2CD_rmdir(char *)
  57. ==================
  58. Removes the named directory.
  59.  
  60.  
  61. T2CF_append(PTR_FILE, int, int)
  62. ===============================
  63. Opens the given file for appending only, with the file pointer set to the last
  64. position.
  65.  
  66.  
  67. T2CF_assign( PTR_FILE, char * )
  68. ===============================
  69. Equivalent to first half of the standard C function open().
  70.  
  71.  
  72. T2CF_blockread(PTR_FILE, char *, int, short, va_alist)
  73. =====================================================
  74. Reads from an untyped file.  The second argument is the variable into which the
  75. characters are read; the third argument gives the number of 128-bye blocks to
  76. be read. An optional argument returns the actual number of blocks read.
  77.  
  78.  
  79. T2CF_blockwrite(PTR_FILE, char *, int, short, va_alist)
  80. ======================================================
  81. Writes to an untyped file.  The second argument is the variable from which the
  82. characters are written; the third argument gives the number of 128-bye blocks
  83. to be written. An optional argument returns the actual number of blocks
  84. written.
  85.  
  86.  
  87. T2CF_chain(PTR_FILE)
  88. ====================
  89. Emulates the Turbo Pascal Chain procedure:  spawns a child process and then
  90. returns to the parent process.
  91.  
  92.  
  93. T2CF_close(PTR_FILE)
  94. ====================
  95. Flushes all buffers and closes the given file.
  96.  
  97.  
  98. T2CF_eof(PTR_FILE)
  99. ==================
  100. Returns TRUE if the file pointer is at the end of the file or FALSE otherwise.
  101.  
  102.  
  103. T2CF_eoln(PTR_FILE)
  104. ===================
  105. Returns TRUE if the file pointer is at the end of the current line or FALSE if
  106. it is not.
  107.  
  108.  
  109. T2CF_erase(PTR_FILE)
  110. ====================
  111. Erases the given file.  This function assumes that the file name includes a
  112. path.
  113.  
  114.  
  115. T2CF_execute(PTR_FILE)
  116. ======================
  117. Executes the given file and does not return to the parent process.
  118.  
  119.  
  120. T2CF_filepos(PTR_FILE)
  121. ======================
  122. Returns a value of type int representing the current position (in records) of
  123. the file pointer.
  124.  
  125.  
  126. T2CF_filesize(PTR_FILE)
  127. =======================
  128. Returns the number of records in the file.
  129.  
  130.  
  131. T2CF_flush(PTR_FILE);
  132. =====================
  133. If the file is open for writing and any write operation has taken place since
  134. the last disk update, writes the sector buffer.  If the file is open for
  135. reading, causes the next read operation to be a physical read from the disk
  136. file.  This function has no effect on unbuffered file I/O.
  137.  
  138.  
  139. T2CF_ioresult()
  140. ===============
  141. Emulates the Turbo Pascal IOresult function:  returns the result of an I/O
  142. operation.
  143.  
  144.  
  145. double T2CF_longfilepos(PTR_FILE)
  146. =================================
  147. Similar to T2CF_filepos, but returns a double instead of an int.
  148.  
  149.  
  150. double T2CF_longfilesize(PTR_FILE)
  151. ==================================
  152. Returns a value of type double representing the current position (in records)
  153. of the file pointer.
  154.  
  155.  
  156. T2CF_longseek(PTR_FILE, long)
  157. =============================
  158. Moves the file pointer to the byte given by the second argument. The position
  159. of the first byte is assumed to be 0.
  160.  
  161.  
  162. T2CF_read(PTR_FILE, char *, int, va_alist)
  163. =========================================
  164. Reads an arbitrary number of bytes from the specified file. The second argument
  165. is a format string.  The remaining arguments name the variables to which the
  166. consecutive read values are to be assigned.
  167.  
  168.  
  169. T2CF_rename(PTR_FILE, char *)
  170. ============================
  171. Renames the indicated file to the name given by the second argument.  Do not
  172. use this function with an open file.
  173.  
  174.  
  175. T2CF_reset(PTR_FILE, int, short, va_alist)
  176. ==========================================
  177. Prepares the given file for processing, setting the file pointer to position 0.
  178. This function takes an optional argument to specify the block size for untyped
  179. file.
  180.  
  181.  
  182. T2CF_rewrite(PTR_FILE, int, short, va_alist)
  183. ============================================
  184. Creates a new, empty disk file for writing.  This function takes an optional
  185. argument to specify the block size for an untyped file.
  186.  
  187.  
  188. T2CF_seek(PTR_FILE, int)
  189. ========================
  190. Moves the file pointer to the byte given by the second argument. The position
  191. of the first byte is assumed to be 0.
  192.  
  193.  
  194. T2CF_seekeof(PTR_FILE)
  195. ======================
  196. Returns TRUE if the file pointer is at the end of the file or FALSE otherwise.
  197. This function is similar to T2CF_eof(), but it ignores white-space characters.
  198.  
  199.  
  200. T2CF_seekeoln(PTR_FILE)
  201. =======================
  202. Returns TRUE if the file pointer is at the end of the current line or FALSE if
  203. it is not.  This function is similar to T2CF_eoln(), but it ignores white-space
  204. characters.
  205.  
  206.  
  207. T2CF_truncate(PTR_FILE)
  208. =======================
  209. Truncates the given file at the current file-pointer position.  The file must
  210. be open for writing.
  211.  
  212.  
  213. T2CF_write(PTR_FILE, char *, int, va_alist)
  214. ==========================================
  215. Writes an arbitrary number of bytes to the specified file. The second argument
  216. is a format string.  The remaining arguments name the variables from which the
  217. consecutive values are to be written.
  218.  
  219.  
  220. void T2CG_arc (int, int, int, int, int)
  221. =======================================
  222. Draws an arc.  The first two arguments give the start position; the third gives
  223. the angle subtended; the fourth specifies the radius; and the fifth indicates
  224. the color.
  225.  
  226.  
  227. int T2CG_circle (int, int, int, int)
  228. ====================================
  229. Draws a circle in the color given by the last argument.  The first two
  230. arguments describe the center of the circle; the third indicates the radius.
  231.  
  232.  
  233. void T2CG_clearscreen()
  234. =======================
  235. Clears the active window and homes the turtle.
  236.  
  237.  
  238. void T2CG_colortable (int, int, int, int)
  239. =========================================
  240. Emulates the Turbo Pascal ColorTable routine:  defines a color-translation
  241. table for drawing procedures.
  242.  
  243.  
  244. int T2CG_draw(int, int, int, int, int)
  245. ======================================
  246. Draws a line in the color specified by the last argument.  The first two pairs
  247. of arguments give the starting and ending points.
  248.  
  249.  
  250. int T2CG_fillpattern (int, int, int, int, int)
  251. ==============================================
  252. Fills a rectangular region with the pattern set by the T2CG_pattern() function.
  253. The first two pairs of arguments define the corners of the target area; the
  254. last argument gives the color.
  255.  
  256.  
  257. int T2CG_fillscreen (int)
  258. =========================
  259. Fills the screen with the specified color.
  260.  
  261.  
  262. int T2CG_fillshape (int, int, int, int)
  263. =======================================
  264. Fills an arbitrary area with the color given by the third argument.  The first
  265. two arguments describe the fill starting point, which should lie within a
  266. region entirely enclosed by the color given by the fourth argument.
  267.  
  268.  
  269. int T2CG_getdotcolor (int, int)
  270. ===============================
  271. Returns the color value of the pixel at the specified coordinates.
  272.  
  273.  
  274. int T2CG_getpic(char *, int, int, int, int)
  275. ==========================================
  276. Emulates the Turbo Pascal GetPic routine:  copies the contents of a rectangular
  277. region to the location given by the first argument.  The last two pairs of
  278. arguments define the corners of the area to be copied.
  279.  
  280. int T2CG_graphbackground (int)
  281. ==============================
  282. Sets the graphics background color.  Legal values are 0-15 as listed in the
  283. color table for T2CG_textcolor().
  284.  
  285.  
  286. int T2CG_graphcolormode ()
  287. ==========================
  288. Activates 320x200 color graphics.
  289.  
  290.  
  291. int T2CG_graphics ()
  292. ====================
  293. Activates 320x200 black/white graphics.  Same as T2CG_graphmode ().
  294.  
  295.  
  296. int T2CG_graphmode ()
  297. =====================
  298. Activates 320x200 black/white graphics.
  299.  
  300.  
  301. int T2CG_graphwindow (int, int, int, int)
  302. =========================================
  303. Declares a new graphics window.  The arguments describe the top left and lower
  304. right corners of the new window in global screen pixel coordinates.
  305.  
  306.  
  307. int T2CG_hires ()
  308. =================
  309. Activates 640x200 black/one-color graphics.
  310.  
  311. int T2CG_palette (int)
  312. ======================
  313. Sets the palette available for use in GraphColorMode. The four palettes are
  314.  
  315. Color:         1              2              3              4
  316.  
  317. Palette 0      Background     Green          Red            Brown
  318. Palette 1      Background     Cyan           Magenta        Light Gray
  319. Palette 2      Background     Light Green    Light Red      Yellow
  320. Palette 3      Background     Light Cyan     Light Magenta  White
  321.  
  322.  
  323. void T2CG_pattern (char *)
  324. =========================
  325. Emulates the Turbo Pascal procedure pattern.
  326.  
  327.  
  328. int T2CG_hirescolor(int)
  329. ========================
  330. Sets the color used for drawing in hi-res graphics.  Allowable values are the
  331. same as for T2CTR_textcolor().
  332.  
  333.  
  334. int T2CG_plot (int, int, int)
  335. =============================
  336. Plots a point in the color specified by the third argument.  The first two
  337. arguments give the coordinates in the current window's frame of reference.
  338.  
  339.  
  340. void T2CG_putpic (char *, int, int)
  341. ==================================
  342. Copies the contents of the first argument--presumably containing the results of
  343. a T2CG_getpic()--to the screen.  The last two arguments describe the lower left
  344. corner of the target area.
  345.  
  346.  
  347. int T2CG_textbackground (int)
  348. =============================
  349. Sets text background color from among the values 0-7, which correspond to the
  350. colors shown in the table for T2CG_textcolor().
  351.  
  352.  
  353. int T2CG_textcolor (int)
  354. ========================
  355. Sets the color of text-mode characters based on the value of the argument, as
  356. shown below:
  357.  
  358. Value     Color          Value     Color
  359. -----     -----          -----     -----
  360. 0         Black          8         Dark Gray
  361. 1         Blue           9         Light Blue
  362. 2         Green          10        Light Green
  363. 3         Cyan           11        Light Cyan
  364. 4         Red            12        Light Red
  365. 5         Magenta        13        Light Magenta
  366. 6         Brown          14        Yellow
  367. 7         Light Gray     15        White
  368.  
  369. To make characters blink, add 16 to the argument value.
  370.  
  371.  
  372. int T2CG_textmode(int, va_alist )
  373. =================================
  374. Sets the text display mode. If no argument is given, the last active text mode
  375. is restored.  The legal arguments are:
  376.  
  377.      Argument       Mode
  378.      --------       ----
  379.      BW40           40-column black and white
  380.      BW80           80-column black and white
  381.      C40            40-column color
  382.      C80            80-column color
  383.  
  384.  
  385. int T2CG_wherex ()
  386. ==================
  387. Returns the x coordinate of the cursor position.
  388.  
  389.  
  390. int T2CG_wherey ()
  391. ==================
  392. Returns the y coordinate of the cursor position.
  393.  
  394.  
  395. void T2CG_window (int, int, int, int)
  396. =====================================
  397. Creates a new active text window.  The first two arguments describe the upper
  398. left corner (in global screen coordinates), and the last two describe the lower
  399. right corner.
  400.  
  401.  
  402. T2CH_cseg()
  403. ===========
  404. Returns the base address of the code segment.
  405.  
  406.  
  407. T2CH_dseg()
  408. ===========
  409. Returns the base address of the data segment.
  410.  
  411.  
  412. T2CH_intr(int, PAS_REGS *)
  413. ===========================
  414. Initializes the CPU registers and executes the given BIOS interrupt.
  415.  
  416.  
  417. char T2CH_mem(int, int)
  418. =======================
  419. Returns the value stored at the memory location indicated by the given segment
  420. (first argument) and offset (second argument).
  421.  
  422.  
  423. int T2CH_memw(int, int)
  424. =======================
  425. Returns the value stored at the memory location indicated by the given segment
  426. (first argument) and offset (second argument).  This function is the same as
  427. the T2CH_mem() function, except that it returns a two-byte word (int).
  428.  
  429.  
  430. T2CH_msdos(PAS_REGS *)
  431. ======================
  432. Initializes the CPU registers and executes a DOS function call.
  433.  
  434.  
  435. T2CH_ofs(char *)
  436. ===============
  437. Returns the offset (relative to the segment beginning) of a given address.
  438.  
  439.  
  440. char far * T2CH_ptr(int, int)
  441. =============================
  442. Returns a 32-bit pointer to the memory location indicated by the given segment
  443. (first argument) and offset (second argument).
  444.  
  445.  
  446. T2CH_seg(char *)
  447. ===============
  448. Returns the address of the segment containing the specified memory location.
  449.  
  450.  
  451. T2CH_sseg()
  452. ===========
  453. Returns the base address of the stack segment.
  454.  
  455.  
  456. double T2CM_arctan(double)
  457. ==========================
  458. Returns the arctangent of the argument.
  459.  
  460.  
  461. char T2CM_chr (int)
  462. ===================
  463. Returns the character corresponding to the given ASCII value.
  464.  
  465.  
  466. double T2CM_cos(double)
  467. =======================
  468. Returns the cosine of the argument.
  469.  
  470.  
  471. double T2CM_exp(double)
  472. =======================
  473. Returns the exponential of the argument.
  474.  
  475.  
  476. double T2CM_frac(double)
  477. ========================
  478. Returns the fractional part of the argument.
  479.  
  480.  
  481. int T2CM_hi (int)
  482. =================
  483. Returns the high byte of the argument word.
  484.  
  485.  
  486. int T2CM_I_abs(int) double T2CM_R_abs(double)
  487. =========================
  488. Return the absolute value of an int or double value, respectively.
  489.  
  490.  
  491. int T2CM_I_random(int)
  492. ======================
  493. Returns a random integer between 0 and the value of the argument minus 1.
  494.  
  495.  
  496. int T2CM_I_sqr(int) double T2CM_R_sqr(double)
  497. =========================
  498. Return the square of an int or double value, respectively.
  499.  
  500.  
  501. double T2CM_int(double)
  502. =======================
  503. Returns the integer part of the argument.
  504.  
  505.  
  506. double T2CM_ln(double)
  507. ======================
  508. Returns the natural logarithm of the argument.
  509.  
  510.  
  511. int T2CM_lo (int)
  512. =================
  513. Returns the low byte of the argument word.
  514.  
  515.  
  516. int T2CM_odd (int)
  517. ==================
  518. Returns TRUE if the argument is odd or FALSE if it is even.
  519.  
  520.  
  521. double T2CM_R_random()
  522. ======================
  523. Returns a random number greater than or equal to 0 and less than 1.
  524.  
  525.  
  526. void T2CM_randomize()
  527. =====================
  528. Generates a random-number seed.
  529.  
  530.  
  531. int T2CM_round (double)
  532. =======================
  533. Returns the integer portion of the number, rounded upward.
  534.  
  535.  
  536. double T2CM_sin(double)
  537. =======================
  538. Returns the sine of the argument.
  539.  
  540.  
  541. double T2CM_sqrt(double)
  542. ========================
  543. Returns the square root of the argument.
  544.  
  545.  
  546. int T2CM_trunc (double)
  547. =======================
  548. Returns the integer portion of the argument.
  549.  
  550.  
  551. T2CR_freemem(char **, int)
  552. ==========================
  553. Frees a block of space allocated by T2CR_getmem(). The second argument is not
  554. used.
  555.  
  556.  
  557. T2CR_getmem(char **, int)
  558. =========================
  559. Allocates the specified number of bytes for an object of type char.
  560.  
  561.  
  562. T2CR_maxavail()
  563. ===============
  564. Returns the size (in 16-byte paragraphs) of the largest block of contiguous
  565. free space on the heap.  This function may return a negative number to indicate
  566. that more than 32K of contiguous stack space is free. To avoid this
  567. possibility, enter
  568.  
  569.      EXEMOD <filename>.EXE /MAX n
  570.  
  571. to test the amount of contiguous, free stack space.
  572.  
  573.  
  574. T2CR_memavail()
  575. ===============
  576. Returns the available heap space (in 16-byte paragraphs) at any given time.
  577. Like T2CR_maxavail(), this function may return a negative number to indicate
  578. that the amount of free space is more than 32K. To avoid this possibility,
  579. enter
  580.  
  581.      EXEMOD <filename>.EXE /MAX n
  582.  
  583. to test the amount of contiguous, free stack space.
  584.  
  585.  
  586. char * T2CS_ch2str (char)
  587. =========================
  588. Returns a string consisting of the given character.
  589.  
  590.  
  591. char T2CS_str2ch(char *)
  592. =======================
  593. Returns the first character in the string.
  594.  
  595.  
  596. T2CSCR_clreol()
  597. ===============
  598. Clears all characters from the current position to the end of the line.
  599.  
  600.  
  601. T2CSCR_clrscr()
  602. ===============
  603. Clears the screen, homing the cursor.
  604.  
  605.  
  606. T2CSCR_crtexit()
  607. ================
  608. Sends the terminal-reset string.
  609.  
  610.  
  611. T2CSCR_crtinit()
  612. ================
  613. Initializes the CRT.
  614.  
  615.  
  616. T2CSCR_delline()
  617. ================
  618.  
  619. Deletes the line on which the cursor rests, moving all succeeding lines up one
  620. line.
  621.  
  622.  
  623. T2CSCR_gotoxy(int, int)
  624. =======================
  625. Moves the cursor to the column given by the first argument and the row given by
  626. the second argument.
  627.  
  628.  
  629. T2CSCR_highvideo()
  630. ==================
  631. Sets screen output to high-intensity video.
  632.  
  633.  
  634. T2CSCR_insline()
  635. ================
  636. Inserts a blank line at the current screen position.
  637.  
  638.  
  639. T2CSCR_lowvideo()
  640. =================
  641. Sets screen output to dimmed intensity.
  642.  
  643.  
  644. T2CSCR_normvideo()
  645. ==================
  646. Sets screen output to normal intensity.
  647.  
  648.  
  649. TURBOSET T2CSOP_tsassign(TURBOSET, TURBOSET)
  650. ============================================
  651. Assigns the values of the second set to the first set.
  652.  
  653.  
  654. TURBOSET T2CSOP_tsdiff(TURBOSET, TURBOSET)
  655. ==========================================
  656. Returns the differences between two sets.
  657.  
  658.  
  659. boolean T2CSOP_tseq (TURBOSET, TURBOSET)
  660. ========================================
  661. Returns TRUE if the sets are equal or FALSE if they are not.
  662.  
  663.  
  664. boolean T2CSOP_tsgrteq (TURBOSET, TURBOSET)
  665. ===========================================
  666. Returns TRUE if the second set is a subset of the first or FALSE if it is not.
  667.  
  668.  
  669. boolean T2CSOP_tsincl (int, TURBOSET)
  670. =====================================
  671. Returns TRUE if the first argument is an element of the set or FALSE if it is
  672. not.
  673.  
  674.  
  675. TURBOSET T2CSOP_tsinter (TURBOSET, TURBOSET)
  676. =============================================
  677. Returns the intersection of two sets.
  678.  
  679.  
  680. boolean T2CSOP_tslesseq (TURBOSET, TURBOSET)
  681. ============================================
  682. Returns TRUE if the first set is a subset of the second or FALSE if it is not.
  683.  
  684.  
  685. TURBOSET T2CSOP_tsmake ( va_alist)
  686. ===================================
  687. Creates a Turbo-Pascal-type set containing the given elements.
  688.  
  689.  
  690. boolean T2CSOP_tsnoteq (TURBOSET, TURBOSET)
  691. ===========================================
  692. Returns TRUE if the sets are not equal or FALSE if they are equal.
  693.  
  694.  
  695. TURBOSET T2CSOP_tsunion  (TURBOSET, TURBOSET)
  696. =============================================
  697. Returns the union of two sets.
  698.  
  699.  
  700. void T2CST_I_val (char *, int *, int *)
  701. =======================================
  702. Converts the first argument to an int and stores this value in the second
  703. argument.  The third argument is set to 0 if no errors occur or to 1 otherwise.
  704. If errors occur, the value stored in the int is undefined.
  705.  
  706.  
  707. void T2CST_R_val(char *, double*, int *)
  708. ========================================
  709. Converts the first argument to a double and stores this value in the second
  710. argument.  The third argument is set to 0 if no errors occur or to 1 otherwise.
  711. If errors occur, the value stored in the double is undefined.
  712.  
  713.  
  714. char * T2CST_concat(int, char *, char *, va_alist)
  715. ==================================================
  716. Concatenates the second and subsequent arguments and returns the concatenated
  717. string.  The first argument gives the number of character arguments that
  718. follow.
  719.  
  720.  
  721. char * T2CST_copy(char *, int, int)
  722. ==================================
  723. Returns a substring of the first argument.  The second argument is the starting
  724. position within the string; the third argument is the number of characters to
  725. copy.
  726.  
  727.  
  728. void T2CST_delete(char *, int, int)
  729. ==================================
  730. Removes a substring from the first argument. The second argument gives the
  731. position in the string from which to begin deleting characters; the third
  732. argument tells how many characters to delete.
  733.  
  734.  
  735. void T2CST_insert (char *, char *, int)
  736. =====================================
  737. Inserts the string given as the first argument into the string given as the
  738. second.  The last argument indicates the point in the second argument where the
  739. first argument is inserted.
  740.  
  741.  
  742. int T2CST_length(char *)
  743. =======================
  744. Returns the length of the given string.
  745.  
  746.  
  747. int T2CST_pos(char *, char *)
  748. ===========================
  749. Checks for the presence of the first argument as a substring within the second
  750. argument.  Returns the starting position if the first argument is found or 0
  751. otherwise. The first character of the second argument string is considered to
  752. be character 1 for the sake of compatibility with Pascal.
  753.  
  754.  
  755. T2CST_str()
  756. ===========
  757. Not yet implemented.
  758.  
  759.  
  760. void T2CTR_back(int)
  761. ====================
  762. Moves the turtle back the specified number of turtle steps, drawing a line in
  763. the current pen color if the pen is down.
  764.  
  765.  
  766. void T2CTR_forwd(int)
  767. =====================
  768. Moves the turtle forward the specified number of turtle steps, drawing a line
  769. in the current pen color if the pen is down.
  770.  
  771.  
  772. int T2CTR_heading()
  773. ===================
  774. Returns the turtle's current heading.
  775.  
  776.  
  777. void T2CTR_hideturtle()
  778. =======================
  779. Hides the turtle (that is, makes it invisible).
  780.  
  781.  
  782. void T2CTR_home()
  783. =================
  784. Repositions the turtle at (0,0) pointing to heading 0.  Does not draw a line.
  785.  
  786.  
  787. void T2CTR_nowrap()
  788. ===================
  789. Sets drawing to nowrap mode. The turtle may move anywhere in an infinite plane,
  790. and only activity within the confines of the window will be visible.
  791.  
  792.  
  793. void T2CTR_pendown()
  794. ====================
  795. Puts the turtle's pen down.
  796.  
  797.  
  798. void T2CTR_penup()
  799. ==================
  800. Puts the turtle's pen up.6
  801.  
  802.  
  803. void T2CTR_setheading(int)
  804. ==========================
  805. Sets the turtle's heading to the given value in the range 0-359. Heading 0 is
  806. compass north, heading 90 is east, and so on.
  807.  
  808.  
  809. void T2CTR_setpencolor(int)
  810. ===========================
  811. Sets the color of the turtle's pen.
  812.  
  813.  
  814. void T2CTR_setposition(int, int)
  815. ================================
  816. Moves the turtle to the specified position.  Does not draw a line.
  817.  
  818.  
  819. void T2CTR_showturtle()
  820. =======================
  821. Shows the turtle (that is, makes it visible).
  822.  
  823.  
  824. void T2CTR_turnleft (int)
  825. =========================
  826. Turns the turtle left (counterclockwise) by the given number of degrees.
  827.  
  828.  
  829. void T2CTR_turnright(int)
  830. =========================
  831. Turns the turtle right (clockwise) by the given number of degrees.
  832.  
  833.  
  834. void T2CTR_turtledelay(int)
  835. ===========================
  836. Sets the delay between turtle steps (normally 0) to the given number of
  837. milliseconds.
  838.  
  839.  
  840. int T2CTR_turtlethere()
  841. =======================
  842. Returns 1 if the turtle is shown or 0 if it is not.
  843.  
  844.  
  845. void T2CTR_turtlewindow(int, int, int, int)
  846. ===========================================
  847. Defines a turtle window.  The first two arguments specify the center of the
  848. window (in terms of screen turtle coordinates); the next two give the width and
  849. height, respectively, in pixels.
  850.  
  851.  
  852. void T2CTR_wrap()
  853. =================
  854. Sets the drawing mode to wrap.  In this mode, when the turtle crosses the
  855. boundary of the window, it reappears on the opposite side.
  856.  
  857.  
  858. int T2CTR_xcor()
  859. ================
  860. Returns the turtle's current x coordinate.
  861.  
  862.  
  863. int T2CTR_ycor()
  864. ================
  865. Returns the turtle's current y coordinate.
  866.  
  867.  
  868. T2CV_delay(int)
  869. ===============
  870. Causes a delay for the specified number of milliseconds. Expects
  871. T2C_setup_delay() to have been run previously.
  872.  
  873.  
  874. T2CV_fillchar(char *, int, char)
  875. ===============================
  876. Fills a range of memory with a certain value.  Starting at the location given
  877. by the first argument, the number of bytes given by the second argument are
  878. filled with the value given by the third argument.
  879.  
  880.  
  881. T2CV_keypressed()
  882. =================
  883. Returns TRUE if a keystroke is waiting in the keyboard buffer or FALSE if the
  884. keyboard buffer is empty.
  885.  
  886.  
  887. T2CV_move(char *, char *, int)
  888. ============================
  889. Copies characters from one range of memory to another.  The first two arguments
  890. describe the source and destination bytes, respectively.  The third argument
  891. gives the number of bytes to be copied. Note that possible range overlap is
  892. taken into account.
  893.  
  894.  
  895. T2CV_nosound()
  896. ==============
  897. Turns off a tone generated by T2CV_sound().
  898.  
  899.  
  900. T2CV_sound(int)
  901. ===============
  902. Emits a tone of the given frequency until the T2CV_nosound function is called.
  903.  
  904.  
  905. T2CV_swap(int)
  906. ==============
  907. Swaps the high and low bytes of an int, returning the result.
  908.  
  909.  
  910. char T2CV_upcase(char)
  911. ======================
  912. Converts a character to uppercase.
  913.  
  914. ----------------------------------------------------------------------
  915. QuickC is a trademark of Microsoft Corporation.
  916.  
  917. Turbo Pascal is a trademark of Borland International, Inc..
  918.