old_ovl.ps

来自「开放源码的编译器open watcom 1.6.0版的源代码」· PS 代码 · 共 679 行 · 第 1/3 页

PS
679
字号
@fs2 1500 2495 am (NOTE:) shwd 
@fs0 (  More) shwd 2367 (sections) sd 2869 (than) sd 3162 (just) sd 3416 (the)
sd 3639 (one) sd 3893 (identified) sd 4482 (by) sd 4674 (the) sd 4897 (section)
 sd 5345 (number) sd 5824 (in) sd 5985 (AX) sd 6239 (may) sd 6531 (be) sd 6714 
(loaded) sd 7138 (by) sd 7329 (the) sd 1977 2328 am (overlay) shwd 2441 (manag\
er) sd 2965 (before) sd 3366 (the) sd 3580 (hook) sd 3903 (routine) sd 4343 (i\
s) sd 4479 (called.) sd 4907 (The) sd 5167 (current) sd 5607 (overlay) sd 6070 
(manager) sd 6594 (also) sd 6862 (loads) sd 7200 (all) sd 7383 (of) sd 1977 
2161 am (the) shwd 2185 (ancestors) sd 2742 (of) sd 2896 (a) sd 2995 (section)
sd 3428 (\(See) sd 3714 (the) sd 3922 (WLINK) sd 4425 (documentation) sd 5293 
(in) sd 5439 (the) sd 5647 (Users') sd 6049 (Guide) sd 6427 (for) sd 6627 (a)
sd 6725 (description) sd 7383 (of) sd 1500 1340 am (Overlay manager interface)
shwd 7430 (1) sd 
pageobj restore
showpage
%%Page: # 5
/pageobj save def
.072 .072 scale
2 setlinecap
@fs0
1977 10173 am (what) shwd 2291 (an) sd 2465 (ancestor) sd 2973 (is\).) sd 3204 
(To) sd 3401 (find) sd 3669 (out) sd 3890 (what) sd 4204 (sections) sd 4696 (a\
re) sd 4909 (really) sd 5270 (in) sd 5421 (memory) sd 5928 (the) sd 6141 (debu\
gger) sd 6704 (should) sd 7119 (invoke) sd 1977 10006 am (the handler routine \
with a GET_OVERLAY_STATE request.) shwd 
@fs3 1500 9505 am (2) shwd 
@fs2 ( The Handler Routine) shwd 
@fs0 1500 9004 am (The) shwd 1762 (handler) sd 2227 (routine) sd 2669 (is) sd 
2807 (responsible) sd 3489 (for) sd 3698 (processing) sd 4341 (requests) sd 
4844 (from) sd 5160 (the) sd 5375 (debugger) sd 5940 (pertaining) sd 6552 (to)
sd 6705 (overlays.) sd 7277 (It) sd 7407 (is) sd 1500 8837 am (invoked) shwd 
2006 (by) sd 2201 (the) sd 2427 (debugger) sd 3003 (by) sd 3198 (performing)
sd 3883 (a) sd 4000 (far) sd 4211 (call) sd 4468 (with) sd 4772 (a) sd 4889 (r\
equest) sd 5348 (number) sd 5830 (in) sd 5994 (the) sd 6220 (AX) sd 6477 (regi\
ster.) sd 7027 (The) sd 7298 (AX) sd 1500 8670 am (register) shwd 1966 (is) sd 
2105 (used) sd 2407 (to) sd 2562 (return) sd 2943 (the) sd 3160 (result) sd 
3517 (or) sd 3680 (return) sd 4061 (status) sd 4425 (of) sd 4588 (the) sd 4805 
(request.) sd 5312 (The) sd 5575 (CX) sd 5814 (and) sd 6061 (BX) sd 6300 (regi\
sters) sd 6819 (are) sd 7035 (used) sd 7336 (for) sd 1500 8503 am (some reques\
ts to pass a far pointer to memory.) shwd 1500 8169 am (There) shwd 1879 (are)
sd 2103 (two) sd 2366 (structures) sd 2963 (that) sd 3226 (the) sd 3450 (handl\
er) sd 3923 (routines) sd 4427 (deals) sd 4767 (with.) sd 5140 (The) sd 5410 (\
first) sd 5689 (is) sd 5835 (called) sd 6222 (an) sd 6442 (overlay) sd 6915 (s\
tate.) sd 7329 (An) sd 1500 8002 am (overlay) shwd 1984 (state) sd 2304 (consi\
sts) sd 2810 (of) sd 2991 (a) sd 3116 (block) sd 3490 (of) sd 3670 (memory) sd 
4198 (containing) sd 4852 (all) sd 5055 (the) sd 5289 (information) sd 6013 (n\
ecessary) sd 6619 (for) sd 6846 (the) sd 7080 (overlay) sd 1500 7835 am (manag\
er) shwd 2025 (to) sd 2178 (restore) sd 2603 (the) sd 2818 (overlays) sd 3336 
(to) sd 3489 (their) sd 3790 (current) sd 4231 (condition) sd 4804 (at) sd 4949
 (some) sd 5287 (later) sd 5580 (point) sd 5911 (in) sd 6063 (time.) sd 6406 (\
The) sd 6666 (first) sd 6935 (portion) sd 7383 (of) sd 1500 7668 am (this)
shwd 1742 (block) sd 2093 (is) sd 2226 (a) sd 2328 (bit) sd 2516 (vector,) sd 
2941 (with) sd 3229 (each) sd 3524 (bit) sd 3711 (representing) sd 4442 (an)
sd 4613 (overlay) sd 5072 (section.) sd 5550 (If) sd 5683 (the) sd 5893 (bit)
sd 6080 (is) sd 6212 (a) sd 6313 (one,) sd 6590 (then) sd 6870 (the) sd 7080 (\
overlay) sd 1500 7501 am (section) shwd 1938 (is) sd 2073 (currently) sd 2621 
(in) sd 2772 (memory.) sd 3328 (If) sd 3464 (the) sd 3677 (bit) sd 3867 (is)
sd 4002 (a) sd 4106 (zero) sd 4389 (then) sd 4672 (the) sd 4885 (overlay) sd 
5347 (section) sd 5785 (is) sd 5920 (not) sd 6141 (in) sd 6292 (memory.) sd 
6883 (To) sd 7080 (convert) sd 1500 7334 am (from a section number to a bit po\
sition use the following formulas:) shwd 
@fs6 1750 6917 am (byte_offset = \(section_number - 1\) / 8;) shwd 1750 6778
am (bit_number  = \(section_number - 1\) % 8;) shwd 
@fs0 1500 6444 am (Following the bit vector is information that the manager us\
es to restore the overlay stack.) shwd 1500 6110 am (The) shwd 1756 (second)
sd 2183 (structure) sd 2712 (used) sd 3007 (is) sd 3139 (an) sd 3310 (overlay)
sd 3768 (address.) sd 4267 (This) sd 4553 (consists) sd 5033 (of) sd 5188 (a)
sd 5288 (far) sd 5482 (pointer) sd 5917 (followed) sd 6453 (by) sd 6631 (a) sd 
6731 (16-bit) sd 7104 (section) sd 1500 5943 am (number.) shwd 1500 5609 am (T\
he following requests are recognized by the debug handler routine.) shwd 
@fs3 1500 5108 am (2.1 GET_STATE_SIZE) shwd 
@fs6 2050 4691 am (Inputs:) shwd 4450 (Outputs:) sd 2050 4552 am (AX = request\
 number \(0\)) shwd 4450 (AX = size of overlay state) sd 
@fs0 1500 4218 am (This request returns the number of bytes required for an ov\
erlay state.) shwd 
@fs3 1500 3717 am (2.2 GET_OVERLAY_STATE) shwd 
@fs6 2050 3300 am (Inputs:) shwd 4450 (Outputs:) sd 2050 3161 am (AX = request\
 number \(1\)) shwd 4450 (AX = 1) sd 2050 3022 am (CX:BX = far pointer to memo\
ry) shwd 2650 2883 am (to store overlay state) shwd 
@fs0 1500 2549 am (This) shwd 1789 (request) sd 2234 (copies) sd 2632 (the) sd 
2844 (overlay) sd 3305 (state) sd 3602 (into) sd 3861 (the) sd 4072 (memory)
sd 4577 (pointed) sd 5037 (at) sd 5178 (by) sd 5358 (the) sd 5569 (CX:BX) sd 
6036 (registers.) sd 6596 (A) sd 6737 (one) sd 6979 (is) sd 7112 (always) sd 
1500 2382 am (returned in AX.) shwd 1500 1340 am (Overlay manager interface)
shwd 7430 (2) sd 
pageobj restore
showpage
%%Page: # 6
/pageobj save def
.072 .072 scale
2 setlinecap
@fs0

@fs3 1500 9839 am (2.3 SET_OVERLAY_STATE) shwd 
@fs6 2050 9422 am (Inputs:) shwd 4450 (Outputs:) sd 2050 9283 am (AX = request\
 number \(2\)) shwd 4450 (AX = 1) sd 2050 9144 am (CX:BX = far pointer to memo\
ry) shwd 2650 9005 am (to load overlay state) shwd 
@fs0 1500 8671 am (This) shwd 1797 (request) sd 2250 (takes) sd 2586 (a) sd 
2697 (previously) sd 3337 (obtained) sd 3868 (overlay) sd 4337 (state) sd 4642 
(and) sd 4893 (causes) sd 5306 (the) sd 5526 (overlay) sd 5994 (manager) sd 
6523 (to) sd 6680 (return) sd 7063 (itself) sd 7391 (to) sd 1500 8504 am (that)
 shwd 1767 (overlay) sd 2244 (configuration.) sd 3135 (A) sd 3293 (one) sd 3552
 (is) sd 3702 (always) sd 4147 (returned) sd 4671 (in) sd 4837 (AX.) sd 5175 (\
The) sd 5449 (overlay) sd 5925 (manager) sd 6462 (will) sd 6736 (not) sd 6971 
(explicitly) sd 1500 8337 am (unload) shwd 2017 (a) sd 2215 (section) sd 2747 
(that) sd 3093 (is) sd 3322 (not) sd 3637 (in) sd 3882 (memory) sd 4483 (accor\
ding) sd 5171 (to) sd 5416 (the) sd 5723 (given) sd 6170 (overlay) sd 6726 (st\
ate,) sd 7179 (so) sd 7438 (a) sd 1500 8170 am (GET_OVERLAY_STATE) shwd 3075 (\
request) sd 3542 (following) sd 4150 (a) sd 4275 (SET_OVERLAY_STATE) sd 5827 (\
may) sd 6130 (not) sd 6372 (return) sd 6770 (the) sd 7004 (same) sd 7352 (bit)
sd 1500 8003 am (vector) shwd 1888 (portion.) sd 2372 (This) sd 2658 (request)
sd 3100 (may) sd 3378 (also) sd 3641 (be) sd 3811 (used) sd 4105 (by) sd 4283 
(the) sd 4492 (debugger) sd 5051 (to) sd 5198 (explicitly) sd 5765 (load) sd 
6044 (a) sd 6143 (section,) sd 6612 (so) sd 6773 (the) sd 6981 (assembly) sd 
1500 7836 am (code) shwd 1806 (may) sd 2088 (be) sd 2262 (examined,) sd 2884 (\
perhaps.) sd 3410 (To) sd 3607 (do) sd 3789 (this,) sd 4070 (zero) sd 4353 (ou\
t) sd 4574 (a) sd 4678 (block) sd 5031 (of) sd 5190 (memory) sd 5697 (the) sd 
5910 (size) sd 6169 (of) sd 6328 (an) sd 6502 (overlay) sd 6964 (state,) sd 
7298 (and) sd 1500 7669 am (then) shwd 1802 (turn) sd 2089 (on) sd 2290 (the)
sd 2522 (appropriate) sd 3221 (section) sd 3678 (number) sd 4166 (in) sd 4336 
(the) sd 4567 (bit) sd 4775 (vector,) sd 5226 (then) sd 5527 (make) sd 5889 (a)
 sd 6011 (SET_OVERLAY_STATE) sd 1500 7502 am (request. Remember that not only \
that section will be loaded, but all of its ancestor sections as well.) shwd 
@fs3 1500 7001 am (2.4 TRANSLATE_VECTOR_ADDR) shwd 
@fs6 2050 6584 am (Inputs:) shwd 4450 (Outputs:) sd 2050 6445 am (AX = request\
 number \(3\)) shwd 4450 (AX = 1 if addr was translated,) sd 2050 6306 am (CX:\
BX = far pointer to) shwd 4825 (0 otherwise) sd 2650 6167 am (overlay address)
shwd 
@fs0 1500 5833 am (This) shwd 1786 (request) sd 2228 (checks) sd 2646 (to) sd 
2793 (see) sd 3009 (if) sd 3133 (the) sd 3342 (far) sd 3536 (pointer) sd 3971 
(portion) sd 4414 (of) sd 4569 (the) sd 4778 (overlay) sd 5235 (address) sd 
5691 (pointed) sd 6148 (at) sd 6286 (by) sd 6463 (CX:BX) sd 6927 (is) sd 7057 
(actually) sd 1500 5666 am (an) shwd 1676 (overlay) sd 2140 (vector.) sd 2586 
(If) sd 2724 (the) sd 2939 (address) sd 3402 (is) sd 3539 (a) sd 3645 (vector)
sd 4039 (then) sd 4324 (the) sd 4539 (vector) sd 4933 (address) sd 5396 (is)
sd 5532 (replaced) sd 6049 (by) sd 6232 (the) sd 6446 (true) sd 6707 (address)
sd 7169 (of) sd 7329 (the) sd 1500 5499 am (routine) shwd 1947 (that) sd 2207 
(the) sd 2428 (vector) sd 2828 (is) sd 2971 (for,) sd 3224 (and) sd 3476 (the)
sd 3697 (section) sd 4143 (number) sd 4620 (portion) sd 5075 (is) sd 5218 (fil\
led) sd 5564 (in) sd 5723 (with) sd 6022 (the) sd 6242 (section) sd 6687 (numb\
er) sd 7163 (the) sd 7383 (of) sd 1500 5332 am (routine.) shwd 2015 (A) sd 2167
 (one) sd 2420 (is) sd 2564 (returned) sd 3082 (in) sd 3242 (AX) sd 3495 (in)
sd 3655 (this) sd 3908 (case.) sd 4266 (If) sd 4411 (the) sd 4633 (address) sd 
5103 (is) sd 5247 (not) sd 5477 (an) sd 5659 (overlay) sd 6129 (vector,) sd 
6568 (then) sd 6859 (the) sd 7080 (overlay) sd 1500 5165 am (address is untouc\
hed and an zero is returned in AX.) shwd 
@fs3 1500 4664 am (2.5 TRANSLATE_RETURN_ADDR) shwd 
@fs6 2050 4247 am (Inputs:) shwd 4450 (Outputs:) sd 2050 4108 am (AX = request\
 number \(4\)) shwd 4450 (AX = 1 if addr was translated,) sd 2050 3969 am (CX:\
BX = far pointer to) shwd 4825 (0 otherwise) sd 2650 3830 am (overlay address)
shwd 
@fs0 1500 3496 am (In) shwd 1659 (order) sd 1997 (to) sd 2148 (handle) sd 2563 
(parallel) sd 3025 (overlay) sd 3486 (calls,) sd 3819 (the) sd 4031 (overlay)
sd 4492 (manager) sd 5014 (replaces) sd 5513 (the) sd 5725 (true) sd 5984 (ret\
urn) sd 6360 (address) sd 6820 (on) sd 7001 (the) sd 7213 (stack) sd 1500 3329
am (with) shwd 1803 (that) sd 2067 (of) sd 2238 (some) sd 2586 (special) sd 
3028 (code) sd 3346 (\(the) sd 3618 (parallel) sd 4092 (return) sd 4481 (code\
\).) sd 4952 (It) sd 5091 (then) sd 5385 (takes) sd 5725 (the) sd 5949 (origin\
al) sd 6438 (return) sd 6826 (address) sd 7298 (and) sd 1500 3162 am (section)
shwd 1947 (number) sd 2425 (an) sd 2608 (places) sd 3008 (them) sd 3337 (on)
sd 3527 (the) sd 3748 (overlay) sd 4218 (stack.) sd 4620 (When) sd 5004 (a) sd 
5116 (routine) sd 5563 (returns) sd 6002 (to) sd 6161 (the) sd 6382 (overlay)
sd 6852 (manager,) sd 7422 (it) sd 1500 2995 am (pops) shwd 1806 (the) sd 2019 
(top) sd 2240 (entry) sd 2570 (of) sd 2729 (the) sd 2942 (overlay) sd 3404 (st\
ack,) sd 3770 (makes) sd 4168 (sure) sd 4443 (that) sd 4695 (the) sd 4908 (ori\
ginal) sd 5385 (overlay) sd 5846 (section) sd 6283 (is) sd 6417 (loaded,) sd 
6868 (and) sd 7111 (returns) sd 1500 2828 am (to the original return address.)
shwd 1500 2494 am (This) shwd 1801 (function) sd 2321 (performs) sd 2879 (much)
 sd 3242 (the) sd 3466 (same) sd 3805 (function) sd 4325 (as) sd 4494 (TRANSLA\
TE_VECTOR_ADDR,) sd 6494 (except) sd 6911 (that) sd 7173 (rather) sd 1500 2327
am (than) shwd 1788 (checking) sd 2340 (for) sd 2551 (a) sd 2660 (vector) sd 
3057 (address,) sd 3561 (it) sd 3686 (checks) sd 4113 (to) sd 4269 (see) sd 
4494 (if) sd 4627 (the) sd 4845 (address) sd 5311 (is) sd 5451 (that) sd 5707 
(of) sd 5870 (the) sd 6087 (overlay) sd 6553 (manager) sd 7080 (parallel) sd 
1500 2160 am (return) shwd 1872 (code.) sd 2212 (If) sd 2343 (it) sd 2458 (is)
sd 2588 (then) sd 2866 (the) sd 3074 (section) sd 3507 (number) sd 3971 (in)
sd 4117 (the) sd 4325 (overlay) sd 4782 (address) sd 5238 (is) sd 5368 (used)
sd 5660 (as) sd 5812 (the) sd 6019 (number) sd 6482 (of) sd 6635 (entries) sd 
7044 (down) sd 7391 (in) sd 1500 1993 am (the) shwd 1709 (overlay) sd 2167 (st\
ack) sd 2492 (that) sd 2740 (the) sd 2949 (real) sd 3197 (return) sd 3570 (add\
ress) sd 4026 (and) sd 4265 (section) sd 4698 (number) sd 5162 (is) sd 5292 (t\
o) sd 5438 (be) sd 5607 (found) sd 5971 (\(zero) sd 6296 (is) sd 6426 (the) sd 
6634 (top) sd 6850 (entry) sd 7175 (of) sd 7329 (the) sd 1500 1340 am (Overlay\
 manager interface) shwd 7430 (3) sd 
pageobj restore
showpage
%%Page: # 7
/pageobj save def
.072 .072 scale
2 setlinecap
@fs0
1500 10173 am (overlay) shwd 1981 (stack\).) sd 2461 (The) sd 2739 (true) sd 
3017 (return) sd 3412 (address) sd 3891 (and) sd 4153 (section) sd 4609 (numbe\
r) sd 5096 (then) sd 5397 (replaces) sd 5915 (the) sd 6146 (contents) sd 6672 
(of) sd 6849 (the) sd 7080 (overlay) sd 1500 10006 am (address) shwd 1958 (and)
 sd 2199 (a) sd 2300 (one) sd 2541 (is) sd 2673 (returned) sd 3179 (in) sd 3327
 (AX.) sd 3610 (If) sd 3743 (the) sd 3952 (address) sd 4409 (is) sd 4540 (not)
sd 4757 (the) sd 4966 (parallel) sd 5424 (return) sd 5797 (code,) sd 6135 (the\
n) sd 6414 (the) sd 6623 (overlay) sd 7081 (address) sd 1500 9839 am (is left \
untouched and a zero is returned in AX.) shwd 
@fs3 1500 9338 am (2.6 GET_OVL_TBL_ADDR) shwd 
@fs6 2050 8921 am (Inputs:) shwd 4450 (Outputs:) sd 2050 8782 am (AX = request\
 number \(5\)) shwd 4450 (AX = 0) sd 2050 8643 am (CX:BX = far pointer to vari\
able) shwd 2650 8504 am (of type far pointer to) shwd 2650 8365 am (be filled \
in with) shwd 2650 8226 am (overlay table address) shwd 
@fs0 1500 7892 am (This) shwd 1798 (request) sd 2252 (fills) sd 2520 (in) sd 
2679 (the) sd 2900 (far) sd 3106 (pointer) sd 3553 (pointed) sd 4023 (at) sd 
4174 (by) sd 4364 (CX:BX) sd 4841 (with) sd 5140 (the) sd 5361 (address) sd 
5830 (of) sd 5996 (the) sd 6216 (overlay) sd 6685 (table) sd 7006 (so) sd 7179 
(that) sd 7438 (a) sd 1500 7725 am (profiler) shwd 1965 (can) sd 2203 (find)
sd 2473 (out) sd 2696 (where) sd 3082 (sections) sd 3576 (are) sd 3791 (locate\
d) sd 4239 (in) sd 4392 (the) sd 4607 (executable,) sd 5286 (or) sd 5446 (over\
lay) sd 5909 (files.) sd 6246 (The) sd 6506 (sampler) sd 6991 (program,) sd 
1500 7558 am (when) shwd 1840 (it) sd 1955 (detects) sd 2380 (that) sd 2627 (i\
t) sd 2742 (is) sd 2872 (sampling) sd 3421 (a) sd 3520 (overlaid) sd 4015 (app\
lication,) sd 4708 (can) sd 4938 (perform) sd 5425 (this) sd 5663 (function)
sd 6166 (and) sd 6404 (write) sd 6728 (the) sd 6935 (result) sd 7282 (into) sd 
1500 7391 am (the) shwd 1718 (sample) sd 2160 (file.) sd 2450 (Since) sd 2807 
(the) sd 3024 (overlay) sd 3490 (table) sd 3808 (is) sd 3947 (always) sd 4381 
(in) sd 4536 (the) sd 4753 (root,) sd 5062 (the) sd 5279 (profiler) sd 5746 (c\
an) sd 5986 (then) sd 6273 (find) sd 6545 (the) sd 6762 (overlay) sd 7228 (tab\
le) sd 1500 7224 am (and) shwd 1744 (from) sd 2058 (that,) sd 2347 (find) sd 
2615 (the) sd 2828 (other) sd 3158 (sections.) sd 3698 (It) sd 3826 (should)
sd 4241 (be) sd 4415 (noted) sd 4767 (that) sd 5018 (the) sd 5230 (format) sd 
5644 (of) sd 5802 (the) sd 6014 (overlay) sd 6475 (table) sd 6788 (may) sd 7069
 (change,) sd 1500 7057 am (so this call should be avoided if at all possible.)
 shwd 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?