home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / forth / compiler / fpc / source / bufset.seq < prev    next >
Text File  |  1991-02-21  |  1KB  |  32 lines

  1. \ BUFSET.SEQ    Buffer set for system speed.
  2.  
  3. 32000 VALUE IBLIMIT             \ upper limit of max size IBLEN can be
  4.  
  5. VARIABLE FUDGE   84 FUDGE !     \ 84 = 6 mhz AT clone
  6.  
  7. : MS   ( n -- )
  8.                 0
  9.                 ?do     fudge @ 0
  10.                         ?do     pause
  11.                         loop
  12.                 loop  ;
  13.  
  14. : bufsize-init  ( --- )
  15.                 ['] 1+ is pause-func    \ setup to count iterations
  16.                 0 1 tenths              \ 1 tenth delay to calibrate time edge
  17.                 drop                    \ and discard first try results.
  18.                 4                       \ start with a small offset for 8088's
  19.                 1 tenths                \ Time it again, this time for a
  20.                                         \ FULL 1/10 of a second.
  21.                 ['] noop is pause-func  \ Clear the pause function.
  22.                 dup 90 *D               \ Use double number to allow math
  23.                                         \ range for 25 and 33 mhz machines.
  24.                 iblimit 0 dmin drop     \ Limit result to IBLIMIT bytes.
  25.                 dup =: iblen            \ set buffer length value
  26.                     =: ibfull           \ full size of available buffer space
  27.                 1000 1120 */ fudge !    \ calibrate MS to system clock.
  28.                 defers initstuff ;      \ continue with initialization
  29.  
  30.   ' bufsize-init is initstuff
  31.  
  32.