home *** CD-ROM | disk | FTP | other *** search
/ Brotikasten / BROTCD01.iso / geos / geos59.d64 / page26-38 < prev    next >
Text File  |  1995-08-05  |  29KB  |  859 lines

  1.  
  2.  
  3.  
  4.           ╟┼╧╙ ╦ERNAL ╥OUTINES                                      1-23
  5.  
  6.  
  7.           ╞UNCTION ╬AME: ─╥┴╫├╚
  8.           ╨URPOSE: ─RAWS A CHARACTER.
  9.           ├ALL ADDRESS: $├202
  10.           ╔NPUT REQUIREMENTS:
  11.                ┴         ╘HE ┴╙├╔╔ VALUE OF THE CHARACTER.
  12.                $05       ╥OW TO PRINT ON (1 ABOVE THE UNDERLINE).
  13.                $18-$19   ├OLUMN TO PRINT IN.
  14.                $33       ╘HE TOP MARGIN (╒SUALLY 0).
  15.                $34       ╘HE BOTTOM MARGIN (╒SUALLY 199).
  16.  
  17.           ─ESCRIPTION: ╘HIS ROUTINE IS NOT EXACTLY THE SAME AS ─╙╨├╚╥. ╘HIS
  18.           ROUTINE DOES NOT PROCESS CONTROL CHARACTERS AT ALL.  ╔T ALSO DOES
  19.           NOT  CHECK LEFT AND RIGHT MARGINS AT ALL.  ╔T ONLY CHECKS TOP AND
  20.           BOTTOM MARGINS SO THAT IT STAYS ON SCREEN.
  21.  
  22.  
  23.           ╞UNCTION ╬AME: ─╥╓╬┴═
  24.           ╨URPOSE: ├OMPUTE THE ADDRESS OF THE DISK'S NAME.
  25.           ├ALL ADDRESS: $├298
  26.           ╔NPUT REQUIREMENTS:
  27.                ╪         ┴DDRESS TO PLACE POINTER IN.
  28.                $8489     ├URRENT DRIVE NUMBER.
  29.           ╧UTPUT:
  30.                ╠OCATION IN ZERO PAGE POINTED TO BY ╪ HAS THE ADDRESS OF THE
  31.                CURRENT DRIVE'S NAME.
  32.           ╨REPARATORY ROUTINES: ╧╨╬─╙╦
  33.  
  34.           ─ESCRIPTION:  ╘HIS  ROUTINE  COMPUTES THE ADDRESS OF THE  CURRENT
  35.           DRIVE'S  NAME  BY MULTIPLYING THE DRIVE NUMBER (MINUS 8)  BY  18,
  36.           THEN  THE  OFFSET OF $841┼ IS ADDED TO THAT.  ╘HE RESULT  OF  THE
  37.           COMPUTATION IS STORED AT THE ZERO PAGE ADDRESS IN ╪.
  38.  
  39.  
  40.           ╞UNCTION ╬AME: ─╥╓╙┼╘
  41.           ╨URPOSE: ╙ET CURRENT DRIVE.
  42.           ├ALL ADDRESS: $├2┬0
  43.           ╔NPUT REQUIREMENTS:
  44.                ┴         ─EVICE NUMBER OF DRIVE (8-11).
  45.           ╧UTPUT:
  46.                $┬┴       ╙ET TO NEW DEVICE NUMBER.
  47.                $8489     ╙ET TO NEW DRIVE NUMBER.
  48.  
  49.           ─ESCRIPTION:  ╔F  THE  DRIVE BEING SPECIFIED IS NOT  THE  CURRENT
  50.           DRIVE  THEN  ├╠╥╥─┘ IS CALLED TO CLEAR THE  CURRENT  DRIVE.  ╘HEN
  51.           LOCATIONS $┬┴ AND $8489 ARE SET TO THE NEW DRIVE NUMBER. ╬O OTHER
  52.           LOCATIONS  ARE AFFECTED,  NOR IS ANYTHING ACTUALLY DONE WITH  THE
  53.           DRIVE.
  54.  
  55.  
  56.           ╞UNCTION ╬AME: ─╥╫═╬╒
  57.           ╨URPOSE: ╥EDRAWS THE PRESENT MENU.
  58.           ├ALL ADDRESS: $├193
  59.  
  60.           ─ESCRIPTION: ╘HIS ROUTINE REDRAWS THE CURRENT MENU.
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.           ╟┼╧╙ ╦ERNAL ╥OUTINES                                      1-24
  71.  
  72.  
  73.           ╞UNCTION ╬AME: ─╙┼╘╒╨
  74.           ╨URPOSE: ╙ETS UP A DRIVE WITH TURBODOS.
  75.           ├ALL ADDRESS: $├214
  76.           ╔NPUT REQUIREMENTS:
  77.                $8489     ├URRENT DRIVE NUMBER.
  78.           ┼RRORS: ╙EE ┴PPENDIX ╔.
  79.  
  80.           ─ESCRIPTION:  ╘HIS ROUTINE INITIALIZES THE CURRENT DRIVE, SENDING
  81.           TURBODOS IF NECESSARY.  ╔T THEN CAUSES THE DRIVE TO RUN TURBODOS.
  82.           ╘HIS ROUTINE IS CALLED BY SEVERAL OF THE DISK ╔/╧ ROUTINES,  MOST
  83.           NOTABLY  ARE  ╥┼┴─ AND ╫╥╔╘┼.  ╒PON INITIALIZING THE  DRIVE,  THE
  84.           DRIVE'S STATUS BYTE IS SET TO THE APPROPRIATE VALUE.  ╘HE  STATUS
  85.           BYTES  ARE  STORED  AT  $8492-$8495 AND  HAVE THE  FOLLOWING  BIT
  86.           DEFINITIONS:
  87.                          ┬IT 7     ╘URBODOS IS LOADED.
  88.                          ┬IT 6     ╘URBODOS IS RUNNING.
  89.  
  90.  
  91.           ╞UNCTION ╬AME: ─╙╨├╚╥
  92.           ╨URPOSE: ─ISPLAYS A CHARACTER ON THE SCREEN.
  93.           ├ALL ADDRESS: $├145
  94.           ╔NPUT REQUIREMENTS:
  95.                ┴         ╘HE CHARACTER TO BE PRINTED.
  96.                $02-$03   ╨OINTER TO EXTRA DATA (╒SED BY A FEW CONTROL
  97.                          CHARACTERS, NOT NEEDED OTHERWISE).
  98.                $05       ╘HE ROW FOR PRINTING (1 ABOVE THE UNDERLINE).
  99.                $18-$19   ╘HE COLUMN TO START PRINTING.
  100.                $33       ╘HE TOP MARGIN (╒SUALLY 0).
  101.                $34       ╘HE BOTTOM MARGIN (╒SUALLY 199).
  102.                $35-$36   ╘HE LEFT MARGIN.
  103.                $37-$38   ╘HE RIGHT MARGIN.
  104.           ╨REPARATORY ROUTINES: ╙┼╠┬╙╫ OR ╞╧╬╘
  105.           ┼RRORS: ┬RANCHES THROUGH $84┴┬-$84┴├ IF RIGHT MARGIN IS EXCEEDED.
  106.  
  107.           ─ESCRIPTION:  ╘HIS  ROUTINE  DISPLAYS  A  CHARACTER  IN  A  GIVEN
  108.           LOCATION  IN  THE  CURRENT FONT AND  STYLE.  ╘HE  STYLE  BYTE  IN
  109.           LOCATION $2┼ IS CODED AS FOLLOWS:
  110.                  ┬IT      ─ESCRIPTION
  111.                   7       ╒NDERLINE
  112.                   6       ┬OLDFACE
  113.                   5       ╥EVERSED
  114.                   4       ╔TALICS
  115.                   3       ╧UTLINED
  116.           ┼ITHER ╙┼╠┬╙╫ OR ╞╧╬╘ MUST BE CALLED PRIOR TO USING THIS ROUTINE,
  117.           IN  ORDER  TO SET UP THE FONT POINTERS.  ╙┼╠┬╙╫ IS CALLED  DURING
  118.           ╟┼╧╙'S  BOOTUP  PROCEDURE,  AS  WELL AS BY  THE  MENU  PROCESSOR.
  119.           ╙EVERAL CONTROL CHARACTERS HAVE SPECIAL PROPERTIES.  ╘HOSE  WHICH
  120.           REQUIRE A DATA POINTER ARE MARKED WITH AN ASTERISK.
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.           ╟┼╧╙ ╦ERNAL ╥OUTINES                                      1-25
  137.  
  138.  
  139.                                ├ONTROL ├HARACTER ╘ABLE
  140.  
  141.                ├TRL-╚  ─ELETE PREVIOUS CHARACTER.
  142.                ├TRL-╔  ╘AB.
  143.                ├TRL-╩  ═OVE STRAIGHT DOWN A LINE.
  144.                ├TRL-╦  ╙ET TEXT CURSOR TO 0,0.
  145.                ├TRL-╠  ═OVE STRAIGHT UP A LINE.
  146.                ├TRL-═  ═OVE TO THE BEGINNING OF THE NEXT LINE.
  147.                ├TRL-╬  ╘URN ON UNDERLINING.
  148.                ├TRL-╧  ╘URN OFF UNDERLINING.
  149.              * ├TRL-╨  ╞OLLOWED BY A TABLE SUITABLE FOR ╟╥╨╚╔├.
  150.                ├TRL-╥  ╘URN ON REVERSE VIDEO.
  151.                ├TRL-╙  ╘URN OFF REVERSE VIDEO.
  152.              * ├TRL-╘  ╞OLLOWED BY 2 BYTES WHICH SPECIFY THE NEW COLUMN.
  153.              * ├TRL-╒  ╞OLLOWED BY A BYTE WHICH SPECIFIES THE NEW ROW.
  154.              * ├TRL-╓  ╞OLLOWED BY 3 BYTES WHICH SPECIFY THE NEW PRINT 
  155.                        POSITION.
  156.              * ├TRL-╫  ╙KIPS THE NEXT 3 BYTES.
  157.                ├TRL-╪  ╘URN ON ┬OLDFACE.
  158.                ├TRL-┘  ╘URN ON ╔TALICS.
  159.                ├TRL-┌  ╘URN ON ╧UTLINE.
  160.                ├TRL-  ╘URN OFF ALL EFFECTS, RETURN TO PLAIN TEXT.
  161.  
  162.           ╘HOSE  ENTRIES  MARKED WITH AN ASTERISK (*) SHOULD ONLY  BE  USED
  163.           FROM  ─╙╨╘╪╘ BECAUSE THEY REQUIRE $02-$03 TO BE A POINTER TO  GET
  164.           EXTRA  DATA.  ┴S  WITH ╟╥╨╚╔├,  ├TRL-╨ MUST BE THE  LAST  COMMAND
  165.           BECAUSE  THE  ZERO  BYTE THAT TERMINATES  ╟╥╨╚╔├  WILL  TERMINATE
  166.           ─╙╨╘╪╘.
  167.  
  168.  
  169.           ╞UNCTION ╬AME: ─╙╨╬╒═
  170.           ╨URPOSE: ─ISPLAY AN UNSIGNED 16 BIT INTEGER.
  171.           ├ALL ADDRESS: $├184
  172.           ╔NPUT REQUIREMENTS:
  173.                ┴         ├ONTROL VALUE (╙EE DESCRIPTION).
  174.                $02-$03   ╘HE VALUE TO BE DISPLAYED.
  175.  
  176.           ─ESCRIPTION:  ╘HIS  ROUTINE  CONVERTS  THE VALUE  AT  $02-$03  TO
  177.           DECIMAL ┴╙├╔╔ AND DISPLAYS IT USING ─╙╨├╚╥.  ╘HE CONTROL VALUE IN
  178.           ┴ IS DEFINED AS FOLLOWS:
  179.                BIT 7     0 - RIGHT JUSTIFY THE NUMBER.
  180.                          1 - LEFT JUSTIFY THE NUMBER, IE. NO JUSTIFY.
  181.                BIT 6     0 - PRINT LEADING ZEROES.
  182.                          1 - SKIP LEADING ZEROES.
  183.                BITS 0-5  ╘HE FIELD WIDTH IN PIXELS FOR RIGHT JUSTIFICATION.
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.           ╟┼╧╙ ╦ERNAL ╥OUTINES                                      1-26
  203.  
  204.  
  205.           ╞UNCTION ╬AME: ─╙╨╘╪2
  206.           ╨URPOSE: ╔DENTICAL TO ─╙╨╘╪╘, BUT WITH INLINE CODE.
  207.           ├ALL ADDRESS: $├1┴┼
  208.           ╔NPUT REQUIREMENTS:
  209.                $35-$36   ╘HE LEFT MARGIN.
  210.                $37-$38   ╘HE RIGHT MARGIN.
  211.           ╨REPARATORY ROUTINES: ╙┼╠┬╙╫ OR ╞╧╬╘
  212.           ┼RRORS: ┬RANCHES THROUGH $84┴┬-$84┴├ IF RIGHT MARGIN IS EXCEEDED.
  213.  
  214.           ─ESCRIPTION:  ╘HIS ROUTINE CREATES A POINTER TO THE  TEXT,  CALLS
  215.           ─╙╨╘╪╘, THEN RETURNS TO THE CODE IMMEDIATELY FOLLOWING THE TEXT.
  216.                 ╩╙╥ ─╙╨╘╪2
  217.                .╫╧╥─ ╘HE COLUMN TO START PRINTING IN
  218.                .┬┘╘┼ ╥OW FOR LINE OF PRINT (1 ABOVE THE UNDERLINE)
  219.                .┬┘╘┼ ╘EXT TO BE DISPLAYED
  220.                .┬┘╘┼ 0
  221.                ├ONTROL RETURNS HERE AFTER TEXT IS PRINTED.
  222.  
  223.  
  224.           ╞UNCTION ╬AME: ─╙╨╘╪╘
  225.           ╨URPOSE: ─ISPLAYS AN ENTIRE STRING OF TEXT.
  226.           ├ALL ADDRESS: $├148
  227.           ╔NPUT REQUIREMENTS:
  228.                $02-$03   ╨OINTER TO TEXT STRING.
  229.                $05       ╘HE ROW FOR PRINTING (1 ABOVE THE UNDERLINE).
  230.                $18-$19   ╘HE COLUMN IN WHICH TO START PRINTING.
  231.