| ofs | hex dump | ascii |
|---|
| 0000 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 53 2d 44 4f 53 20 50 52 4f 47 52 41 4d 20 50 | ................MS-DOS.PROGRAM.P |
| 0020 | 52 4f 46 49 4c 45 52 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 4f 52 20 2e | ROFILER....................FOR.. |
| 0040 | 45 58 45 20 2e 43 4f 4d 20 46 49 4c 45 53 0d 0a 0d 0a 0d 0a 49 2e 20 50 55 52 50 4f 53 45 0d 0a | EXE..COM.FILES......I..PURPOSE.. |
| 0060 | 0d 0a 20 20 20 20 20 20 20 20 54 68 65 20 50 52 4f 46 49 4c 20 70 72 6f 67 72 61 6d 20 69 73 20 | ..........The.PROFIL.program.is. |
| 0080 | 64 65 73 69 67 6e 65 64 20 74 6f 20 70 72 6f 64 75 63 65 20 61 6e 20 65 78 65 63 75 74 69 6f 6e | designed.to.produce.an.execution |
| 00a0 | 0d 0a 20 20 20 20 70 72 6f 66 69 6c 65 20 6f 66 20 4d 53 2d 44 4f 53 20 31 2e 32 35 20 6f 72 20 | ......profile.of.MS-DOS.1.25.or. |
| 00c0 | 20 32 2e 30 30 20 20 2e 45 58 45 20 20 6f 72 20 20 2e 43 4f 4d 20 20 66 69 6c 65 73 20 20 6f 6e | .2.00...EXE..or...COM..files..on |
| 00e0 | 0d 0a 20 20 20 20 38 30 38 36 2f 38 30 38 38 20 73 79 73 74 65 6d 73 20 20 77 68 69 63 68 20 20 | ......8086/8088.systems..which.. |
| 0100 | 68 61 76 65 20 61 20 70 72 6f 67 72 61 6d 6d 61 62 6c 65 20 69 6e 74 65 72 72 75 70 74 69 6e 67 | have.a.programmable.interrupting |
| 0120 | 0d 0a 20 20 20 20 63 6c 6f 63 6b 2e 20 20 54 68 65 20 6d 65 74 68 6f 64 20 65 6d 70 6c 6f 79 65 | ......clock...The.method.employe |
| 0140 | 64 20 69 73 20 20 74 6f 20 20 63 68 6f 70 20 20 74 68 65 20 20 70 72 6f 67 72 61 6d 20 20 75 70 | d.is..to..chop..the..program..up |
| 0160 | 0d 0a 20 20 20 20 69 6e 74 6f 20 20 20 61 20 20 73 65 71 75 65 6e 63 65 20 20 6f 66 20 20 22 62 | ......into...a..sequence..of.."b |
| 0180 | 75 63 6b 65 74 73 22 20 20 61 6e 64 20 20 74 6f 20 20 69 6e 63 72 65 6d 65 6e 74 20 20 74 68 65 | uckets"..and..to..increment..the |
| 01a0 | 0d 0a 20 20 20 20 61 70 70 72 6f 70 72 69 61 74 65 20 28 62 61 73 65 64 20 6f 6e 20 43 53 3a 49 | ......appropriate.(based.on.CS:I |
| 01c0 | 50 29 20 62 75 63 6b 65 74 20 63 6f 75 6e 74 20 77 68 65 6e 20 20 74 68 65 20 20 63 6c 6f 63 6b | P).bucket.count.when..the..clock |
| 01e0 | 0d 0a 20 20 20 20 69 6e 74 65 72 72 75 70 74 73 2e 20 20 49 6e 20 20 61 64 64 69 74 69 6f 6e 20 | ......interrupts...In..addition. |
| 0200 | 20 74 68 65 72 65 20 20 61 72 65 20 20 63 6f 75 6e 74 65 72 73 20 20 66 6f 72 20 20 68 69 74 73 | .there..are..counters..for..hits |
| 0220 | 0d 0a 20 20 20 20 69 6e 20 74 68 65 20 49 2f 4f 20 73 79 73 74 65 6d 20 61 6e 64 20 74 68 65 20 | ......in.the.I/O.system.and.the. |
| 0240 | 44 4f 53 20 73 6f 20 20 73 6f 6d 65 20 20 69 64 65 61 20 20 6f 66 20 20 68 6f 77 20 20 49 2f 4f | DOS.so..some..idea..of..how..I/O |
| 0260 | 0d 0a 20 20 20 20 6f 72 20 44 4f 53 20 20 62 6f 75 6e 64 20 20 61 20 20 70 72 6f 67 72 61 6d 20 | ......or.DOS..bound..a..program. |
| 0280 | 20 69 73 2e 20 20 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 20 62 75 63 6b 65 74 20 66 6f 72 | .is...There.is.also.a.bucket.for |
| 02a0 | 0d 0a 20 20 20 20 68 69 74 73 20 61 62 6f 76 65 20 74 68 65 20 70 72 6f 67 72 61 6d 20 61 72 65 | ......hits.above.the.program.are |
| 02c0 | 61 2c 20 79 6f 75 20 20 6d 69 67 68 74 20 20 67 65 74 20 20 63 6f 75 6e 74 73 20 20 68 65 72 65 | a,.you..might..get..counts..here |
| 02e0 | 0d 0a 20 20 20 20 69 66 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 72 65 6c 6f 63 61 74 65 73 20 | ......if.your.program.relocates. |
| 0300 | 69 74 73 65 6c 66 2c 20 6f 72 20 67 6f 65 73 20 68 61 79 77 69 72 65 2e 0d 0a 0d 0a 20 20 20 20 | itself,.or.goes.haywire......... |
| 0320 | 20 20 20 20 54 68 65 20 50 52 4f 46 49 4c 20 20 70 72 6f 67 72 61 6d 20 20 69 73 20 20 6e 6f 74 | ....The.PROFIL..program..is..not |
| 0340 | 20 20 69 6e 74 65 6e 64 65 64 20 20 61 73 20 61 6e 20 65 6e 64 2d 75 73 65 72 0d 0a 20 20 20 20 | ..intended..as.an.end-user...... |
| 0360 | 70 72 6f 67 72 61 6d 2c 20 62 75 74 20 72 61 74 68 65 72 20 20 61 73 20 20 61 20 20 64 65 76 65 | program,.but.rather..as..a..deve |
| 0380 | 6c 6f 70 65 6d 65 6e 74 20 20 74 6f 6f 6c 2e 20 20 20 54 6f 20 20 74 68 69 73 0d 0a 20 20 20 20 | lopement..tool....To..this...... |
| 03a0 | 65 6e 64 20 69 74 20 20 69 73 20 20 6e 6f 74 20 20 70 61 72 74 69 63 75 6c 61 72 6c 79 20 72 6f | end.it..is..not..particularly.ro |
| 03c0 | 62 75 73 74 20 6f 72 20 66 72 69 65 6e 64 6c 79 2c 20 62 75 74 20 67 65 74 73 0d 0a 20 20 20 20 | bust.or.friendly,.but.gets...... |
| 03e0 | 74 68 65 20 6a 6f 62 20 64 6f 6e 65 2e 20 20 54 68 65 20 4f 45 4d 20 6d 75 73 74 20 77 72 69 74 | the.job.done...The.OEM.must.writ |
| 0400 | 65 20 61 20 20 50 43 4c 4f 43 4b 20 20 72 6f 75 74 69 6e 65 20 20 28 73 65 65 0d 0a 20 20 20 20 | e.a..PCLOCK..routine..(see...... |
| 0420 | 50 43 4c 4f 43 4b 2e 41 53 4d 29 20 77 68 69 63 68 20 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 | PCLOCK.ASM).which..implements.th |
| 0440 | 65 20 68 61 72 64 77 61 72 65 20 64 65 70 65 6e 64 61 6e 74 20 63 6c 6f 63 6b 0d 0a 20 20 20 20 | e.hardware.dependant.clock...... |
| 0460 | 69 6e 74 65 72 72 75 70 74 2e 20 20 54 68 65 20 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 | interrupt...The..implementation. |
| 0480 | 20 73 68 6f 75 6c 64 20 20 62 65 20 20 65 76 69 64 65 6e 74 20 20 66 72 6f 6d 0d 0a 20 20 20 20 | .should..be..evident..from...... |
| 04a0 | 65 78 61 6d 69 6e 69 6e 67 20 74 68 65 20 20 73 6f 75 72 63 65 20 20 63 6f 64 65 2c 20 20 69 74 | examining.the..source..code,..it |
| 04c0 | 20 20 69 73 20 20 71 75 69 74 65 20 73 69 6d 70 6c 65 2e 20 20 54 68 65 72 65 0d 0a 20 20 20 20 | ..is..quite.simple...There...... |
| 04e0 | 69 73 20 61 20 43 4c 4f 43 4b 4f 4e 20 72 6f 75 74 69 6e 65 20 20 77 68 69 63 68 20 20 73 65 74 | is.a.CLOCKON.routine..which..set |
| 0500 | 73 20 20 75 70 20 20 61 20 20 63 6c 6f 63 6b 20 20 69 6e 74 65 72 72 75 70 74 0d 0a 20 20 20 20 | s..up..a..clock..interrupt...... |
| 0520 | 74 6f 20 20 74 68 65 20 20 43 4c 4b 5f 49 4e 54 45 52 20 20 72 6f 75 74 69 6e 65 20 20 65 76 65 | to..the..CLK_INTER..routine..eve |
| 0540 | 72 79 20 20 44 58 20 20 6d 69 63 72 6f 20 20 73 65 63 6f 6e 64 73 2e 20 20 41 0d 0a 20 20 20 20 | ry..DX..micro..seconds...A...... |
| 0560 | 43 4c 4f 43 4b 4f 46 46 20 72 6f 75 74 69 6e 65 20 77 68 69 63 68 20 75 6e 2d 64 6f 65 73 20 43 | CLOCKOFF.routine.which.un-does.C |
| 0580 | 4c 4f 43 4b 4f 4e 2e 20 20 41 6e 64 20 20 61 20 20 4c 45 41 56 45 5f 49 4e 54 0d 0a 20 20 20 20 | LOCKON...And..a..LEAVE_INT...... |
| 05a0 | 72 6f 75 74 69 6e 65 20 77 68 69 63 68 20 20 69 73 20 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 20 | routine.which..is..responsible.. |
| 05c0 | 66 6f 72 20 74 68 65 20 61 63 74 75 61 6c 20 22 49 52 45 54 22 20 66 72 6f 6d 0d 0a 20 20 20 20 | for.the.actual."IRET".from...... |
| 05e0 | 74 68 65 20 63 6c 6f 63 6b 20 69 6e 74 65 72 72 75 70 74 2e 20 20 41 6c 73 6f 20 73 65 65 20 74 | the.clock.interrupt...Also.see.t |
| 0600 | 68 65 20 50 52 4f 48 49 53 54 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 0d 0a 0d 0a 49 49 | he.PROHIST..documentation.....II |
| 0620 | 2e 20 55 53 41 47 45 0d 0a 0d 0a 20 20 20 20 20 20 20 20 54 68 65 20 70 72 6f 66 69 6c 65 72 20 | ..USAGE............The.profiler. |
| 0640 | 69 73 20 65 6e 76 6f 6b 65 64 20 62 79 20 75 74 74 65 72 69 6e 67 3a 0d 0a 0d 0a 20 20 20 20 20 | is.envoked.by.uttering:......... |
| 0660 | 20 20 20 20 20 20 20 50 52 4f 46 49 4c 20 66 6e 61 6d 65 2e 65 78 74 0d 0a 0d 0a 20 20 20 20 77 | .......PROFIL.fname.ext........w |
| 0680 | 68 65 72 65 20 74 68 65 20 20 66 69 6c 65 6e 61 6d 65 20 20 69 73 20 20 63 6f 6d 70 6c 65 74 6c | here.the..filename..is..completl |
| 06a0 | 79 20 20 73 70 65 63 69 66 69 65 64 2c 20 20 20 69 6e 63 6c 75 64 69 6e 67 0d 0a 20 20 20 20 65 | y..specified,...including......e |
| 06c0 | 78 74 65 6e 73 69 6f 6e 2e 20 20 59 6f 75 20 20 77 69 6c 6c 20 20 74 68 65 6e 20 20 62 65 20 20 | xtension...You..will..then..be.. |
| 06e0 | 70 72 6f 6d 70 74 65 64 20 20 66 6f 72 20 20 74 68 65 20 6e 75 6d 62 65 72 0d 0a 20 20 20 20 6f | prompted..for..the.number......o |
| 0700 | 66 20 70 61 72 61 67 72 61 70 68 73 20 69 6e 20 6f 6e 65 20 62 75 63 6b 65 74 2e 20 20 54 68 69 | f.paragraphs.in.one.bucket...Thi |
| 0720 | 73 20 6e 75 6d 62 65 72 20 20 6d 75 73 74 20 20 62 65 20 20 3e 20 20 30 2c 0d 0a 20 20 20 20 62 | s.number..must..be..>..0,......b |
| 0740 | 61 73 65 64 20 6f 6e 20 20 74 68 69 73 20 20 6e 75 6d 62 65 72 20 20 74 68 65 20 20 6e 75 6d 62 | ased.on..this..number..the..numb |
| 0760 | 65 72 20 6f 66 20 62 75 63 6b 65 74 73 20 69 73 20 63 6f 6d 70 75 74 65 64 0d 0a 20 20 20 20 62 | er.of.buckets.is.computed......b |
| 0780 | 79 20 75 73 69 6e 67 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 | y.using.the.size.of.the.executab |
| 07a0 | 6c 65 20 66 69 6c 65 2e 20 20 4e 65 78 74 20 20 79 6f 75 20 20 77 69 6c 6c 0d 0a 20 20 20 20 62 | le.file...Next..you..will......b |
| 07c0 | 65 20 20 70 72 6f 6d 70 74 65 64 20 20 66 6f 72 20 20 74 68 65 20 20 63 6c 6f 63 6b 20 20 69 6e | e..prompted..for..the..clock..in |
| 07e0 | 74 65 72 76 61 6c 2c 20 20 61 6e 64 20 20 6c 61 73 74 6c 79 20 20 66 6f 72 0d 0a 20 20 20 20 70 | terval,..and..lastly..for......p |
| 0800 | 61 72 61 6d 65 74 65 72 73 20 74 6f 20 20 74 68 65 20 20 70 72 6f 67 72 61 6d 2e 20 20 20 54 79 | arameters.to..the..program....Ty |
| 0820 | 70 65 20 20 74 68 65 20 20 70 61 72 61 6d 65 74 65 72 73 20 20 6a 75 73 74 0d 0a 20 20 20 20 61 | pe..the..parameters..just......a |
| 0840 | 73 20 69 66 20 20 79 6f 75 20 20 77 65 72 65 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 70 72 6f 67 | s.if..you..were.running.the.prog |
| 0860 | 72 61 6d 20 61 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 65 76 65 6c 2e 0d 0a 0d 0a 20 20 20 | ram.at.the.command.level........ |
| 0880 | 20 4e 4f 54 45 3a 20 49 66 20 20 61 20 20 22 62 61 64 22 20 20 6e 75 6d 62 65 72 20 20 69 73 20 | .NOTE:.If..a.."bad"..number..is. |
| 08a0 | 65 6e 74 65 72 65 64 20 66 6f 72 20 74 68 65 20 62 75 63 6b 65 74 20 73 69 7a 65 0d 0a 20 20 20 | entered.for.the.bucket.size..... |
| 08c0 | 20 20 20 20 20 6f 72 20 63 6c 6f 63 6b 20 69 6e 74 65 72 76 61 6c 2c 20 79 6f 75 20 77 69 6c 6c | .....or.clock.interval,.you.will |
| 08e0 | 20 62 65 20 72 65 70 72 6f 6d 70 74 65 64 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 57 68 65 6e 20 | .be.reprompted.............When. |
| 0900 | 74 68 65 20 70 72 6f 67 72 61 6d 20 74 65 72 6d 69 6e 61 74 65 73 2c 20 6e 6f 72 6d 61 6c 6c 79 | the.program.terminates,.normally |
| 0920 | 20 6f 72 20 20 62 79 20 20 43 6e 74 72 6c 2d 43 2c 0d 0a 20 20 20 20 50 52 4f 46 49 4c 20 20 77 | .or..by..Cntrl-C,......PROFIL..w |
| 0940 | 69 6c 6c 20 20 70 72 69 6e 74 20 20 61 20 20 74 65 72 6d 69 6e 61 74 69 6f 6e 20 20 6d 65 73 73 | ill..print..a..termination..mess |
| 0960 | 61 67 65 20 20 28 73 69 6d 69 6c 61 72 20 20 74 6f 0d 0a 20 20 20 20 64 65 62 75 67 29 2e 20 20 | age..(similar..to......debug)... |
| 0980 | 54 68 65 20 6f 75 74 70 75 74 20 66 69 6c 65 20 77 69 6c 6c 20 20 62 65 20 20 66 6e 61 6d 65 2e | The.output.file.will..be..fname. |
| 09a0 | 50 52 46 20 20 77 68 65 72 65 20 20 66 6e 61 6d 65 0d 0a 20 20 20 20 69 73 20 74 68 65 20 20 73 | PRF..where..fname......is.the..s |
| 09c0 | 61 6d 65 20 20 61 73 20 20 74 68 65 20 20 66 69 6c 65 20 20 63 6f 6e 74 61 69 6e 69 6e 67 20 20 | ame..as..the..file..containing.. |
| 09e0 | 74 68 65 20 70 72 6f 67 72 61 6d 20 62 65 69 6e 67 0d 0a 20 20 20 20 70 72 6f 66 69 6c 65 64 2e | the.program.being......profiled. |
| 0a00 | 0d 0a 0d 0a 49 49 49 2e 20 4f 55 54 50 55 54 20 46 4f 52 4d 41 54 0d 0a 0d 0a 20 20 20 20 20 20 | ....III..OUTPUT.FORMAT.......... |
| 0a20 | 20 20 54 68 65 20 66 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 20 6f 75 74 70 75 74 20 20 66 69 6c | ..The.format.of.the..output..fil |
| 0a40 | 65 20 20 69 73 20 20 74 68 65 20 20 66 6f 6c 6c 6f 77 69 6e 67 20 20 43 0d 0a 20 20 20 20 74 79 | e..is..the..following..C......ty |
| 0a60 | 70 65 20 73 74 72 75 63 74 75 72 65 2e 0d 0a 0c 0d 0a 73 74 72 75 63 74 20 70 72 6f 66 64 61 74 | pe.structure......struct.profdat |
| 0a80 | 61 20 7b 0d 0a 20 73 68 6f 72 74 20 63 6c 6f 63 6b 5f 67 72 61 69 6e 3b 20 20 2f 2a 20 43 6c 6f | a.{...short.clock_grain;../*.Clo |
| 0aa0 | 63 6b 20 73 61 6d 70 6c 65 20 69 6e 74 65 72 76 61 6c 20 69 6e 0d 0a 20 20 20 20 20 20 20 20 20 | ck.sample.interval.in........... |
| 0ac0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 63 72 6f 2d 73 65 63 6f 6e 64 73 2a 2f 0d 0a | ...............micro-seconds*/.. |
| 0ae0 | 20 73 68 6f 72 74 20 62 75 63 6b 65 74 5f 6e 75 6d 3b 20 20 20 2f 2a 20 54 68 65 20 74 6f 74 61 | .short.bucket_num;.../*.The.tota |
| 0b00 | 6c 20 6e 75 6d 62 65 72 20 6f 66 20 62 75 63 6b 65 74 73 20 2a 2f 0d 0a 20 73 68 6f 72 74 20 62 | l.number.of.buckets.*/...short.b |
| 0b20 | 75 63 6b 65 74 5f 73 69 7a 3b 20 20 20 2f 2a 20 4e 75 6d 62 65 72 20 6f 66 20 70 61 72 61 67 72 | ucket_siz;.../*.Number.of.paragr |
| 0b40 | 61 70 68 73 20 70 65 72 20 62 75 63 6b 65 74 20 2a 2f 0d 0a 20 73 68 6f 72 74 20 70 72 6f 67 5f | aphs.per.bucket.*/...short.prog_ |
| 0b60 | 6c 6f 77 5f 70 61 3b 20 20 2f 2a 20 54 68 65 20 50 61 72 61 67 72 61 70 68 20 6e 75 6d 62 65 72 | low_pa;../*.The.Paragraph.number |
| 0b80 | 20 6f 66 20 74 68 65 20 6c 6f 77 65 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .of.the.lower................... |
| 0ba0 | 20 20 20 20 20 20 20 62 6f 75 6e 64 20 6f 6e 20 74 68 65 20 73 61 6d 70 6c 65 20 61 72 65 61 20 | .......bound.on.the.sample.area. |
| 0bc0 | 2a 2f 0d 0a 20 73 68 6f 72 74 20 70 72 6f 67 5f 68 69 67 68 5f 70 61 3b 20 2f 2a 20 54 68 65 20 | */...short.prog_high_pa;./*.The. |
| 0be0 | 50 61 72 61 67 72 61 70 68 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 65 20 75 70 70 65 72 0d 0a 20 | Paragraph.number.of.the.upper... |
| 0c00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 75 6e 64 20 6f 6e 20 | .......................bound.on. |
| 0c20 | 74 68 65 20 73 61 6d 70 6c 65 20 61 72 65 61 20 2a 2f 0d 0a 20 73 68 6f 72 74 20 64 6f 73 5f 70 | the.sample.area.*/...short.dos_p |
| 0c40 | 61 3b 20 20 20 20 20 20 20 2f 2a 20 54 68 65 20 50 61 72 61 67 72 61 70 68 20 6e 75 6d 62 65 72 | a;......./*.The.Paragraph.number |
| 0c60 | 20 6f 66 20 74 68 65 20 49 2f 4f 20 44 4f 53 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .of.the.I/O.DOS................. |
| 0c80 | 20 20 20 20 20 20 20 20 20 62 6f 75 6e 64 72 79 20 2a 2f 0d 0a 0d 0a 2f 2a 20 57 68 65 6e 20 74 | .........boundry.*/..../*.When.t |
| 0ca0 | 68 65 20 63 6c 6f 63 6b 20 69 6e 74 65 72 72 75 70 74 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 | he.clock.interrupts.the.current. |
| 0cc0 | 73 65 67 6d 65 6e 74 20 69 73 20 63 6f 6d 70 75 74 65 64 0d 0a 66 72 6f 6d 20 74 68 65 20 43 53 | segment.is.computed..from.the.CS |
| 0ce0 | 3a 49 50 2e 20 20 49 66 20 74 68 69 73 20 69 73 20 62 65 6c 6f 77 20 64 6f 73 5f 70 61 20 69 74 | :IP...If.this.is.below.dos_pa.it |
| 0d00 | 20 69 73 20 61 6e 20 49 2f 4f 20 68 69 74 2c 0d 0a 69 66 20 62 65 74 77 65 65 6e 20 64 6f 73 5f | .is.an.I/O.hit,..if.between.dos_ |
| 0d20 | 70 61 20 61 6e 64 20 70 72 6f 67 5f 6c 6f 77 5f 70 61 20 69 74 20 69 73 20 61 20 44 4f 53 20 68 | pa.and.prog_low_pa.it.is.a.DOS.h |
| 0d40 | 69 74 2c 20 69 66 20 62 65 74 77 65 65 6e 0d 0a 70 72 6f 67 5f 6c 6f 77 5f 70 61 20 61 6e 64 20 | it,.if.between..prog_low_pa.and. |
| 0d60 | 70 72 6f 67 5f 68 69 67 68 5f 70 61 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 62 75 63 | prog_high_pa.the.appropriate.buc |
| 0d80 | 6b 65 74 20 6e 75 6d 62 65 72 0d 0a 69 73 20 63 6f 6d 70 75 74 65 64 20 61 6e 64 20 74 68 61 74 | ket.number..is.computed.and.that |
| 0da0 | 20 62 75 63 6b 65 74 20 63 6f 75 6e 74 20 69 73 20 69 6e 63 72 65 6d 65 6e 74 65 64 2c 20 69 66 | .bucket.count.is.incremented,.if |
| 0dc0 | 20 61 62 6f 76 65 0d 0a 70 72 6f 67 5f 68 69 67 68 5f 70 61 20 74 68 65 6e 20 69 74 20 69 73 20 | .above..prog_high_pa.then.it.is. |
| 0de0 | 61 20 68 69 67 68 20 68 69 74 2e 20 20 2a 2f 0d 0a 0d 0a 20 73 68 6f 72 74 20 68 69 74 5f 69 6f | a.high.hit...*/.....short.hit_io |
| 0e00 | 3b 20 20 20 20 20 20 20 2f 2a 20 49 2f 4f 20 62 75 63 6b 65 74 20 2a 2f 0d 0a 20 73 68 6f 72 74 | ;......./*.I/O.bucket.*/...short |
| 0e20 | 20 68 69 74 5f 64 6f 73 3b 20 20 20 20 20 20 2f 2a 20 44 4f 53 20 62 75 63 6b 65 74 20 2a 2f 0d | .hit_dos;....../*.DOS.bucket.*/. |
| 0e40 | 0a 20 73 68 6f 72 74 20 68 69 74 5f 68 69 67 68 3b 20 20 20 20 20 2f 2a 20 41 62 6f 76 65 20 70 | ..short.hit_high;...../*.Above.p |
| 0e60 | 72 6f 67 72 61 6d 20 62 75 63 6b 65 74 20 2a 2f 0d 0a 7d 3b 0d 0a 0d 0a 73 68 6f 72 74 20 62 75 | rogram.bucket.*/..};....short.bu |
| 0e80 | 63 6b 65 74 73 5b 62 75 63 6b 65 74 5f 6e 75 6d 5d 3b 0d 0a 2f 2a 20 54 68 65 20 62 75 63 6b 65 | ckets[bucket_num];../*.The.bucke |
| 0ea0 | 74 73 20 2a 2a 2a 2a 2a 4e 4f 54 45 3a 20 59 6f 75 20 63 61 6e 27 74 20 64 65 63 6c 61 72 65 20 | ts.*****NOTE:.You.can't.declare. |
| 0ec0 | 69 74 20 74 68 69 73 20 77 61 79 0d 0a 28 62 75 63 6b 65 74 5f 6e 75 6d 20 69 73 20 61 20 76 61 | it.this.way..(bucket_num.is.a.va |
| 0ee0 | 72 69 61 62 6c 65 29 2c 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 69 73 20 61 72 65 61 20 69 | riable),.the.size.of.this.area.i |
| 0f00 | 73 0d 0a 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 62 75 | s..determined.by.the.value.of.bu |
| 0f20 | 63 6b 65 74 5f 6e 75 6d 20 69 6e 20 74 68 65 20 66 69 78 65 64 20 68 65 61 64 65 72 0d 0a 2a 2f | cket_num.in.the.fixed.header..*/ |
| 0f40 | 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |