 |
» |
|
|
|
Four special functions (CMNODE, CMTONMNODE, NMNODE, NMTOCMNODE) are
provided to locate the nearest "previous" and "next" nodes for translated
code. The following diagram shows CM object code loaded at %12.0 with its
corresponding NM translated code loaded at $1c.34b0. Node points are
flagged with an "N".
Original CM Translated
Object Code Object Code
CM Instructions NM Instructions
Seg.Off Sid.Off
+-------------+ +-------------+
%12.0 N | PROC+%0 | $1c.34b0 N | PROC+%0 |
%12.1 | PROC+%1 | $1c.34b4 | |
%12.2 N | PROC+%2 | ---+ $1c.34b8 | |
%12.3 | PROC+%3 | | $1c.34bc | |
%12.4 | PROC+%4 | +--> $1c.34c0 N | PROC+%2 |
%12.5 | PROC+%5 | $1c.34c4 | |
%12.7 N | PROC+%6 | <--+ $1c.34c8 | |
%12.10 | PROC+%7 | | $1c.34cc | |
%12.11 | PROC+%10 | | $1c.34d0 | |
%12.12 | PROC+%11 | +--- $1c.34d4 N | PROC+%6 |
%12.13 | PROC+%12 | $1c.34d8 | |
%12.14 N | PROC+%13 | $1c.34dc | |
%12.15 | PROC+%14 | $1c.34e0 | |
%12.16 | PROC+%15 | $1c.34e4 N | PROC+%13 |
%12.17 | PROC+%16 | $1c.34e8 | |
+-------------+ $1c.34ec | |
$1c.34f0 | |
$1c.34f4 | |
$1c.34f8 | |
$1c.34fc | |
$1c.3500 +-------------+
CMNODE(%12.4) = %12.2 NMNODE($1c.34dc) = $1c.34d4
CMNODE(%12.4,"prev") = %12.2 NMNODE($1c.34dc,"prev") = $1c.34d4
CMNODE(%12.4,"next") = %12.7 NMNODE($1c.34dc,"next") = $1c.34e4
CMTONMNODE(%12.4) = $1c.34c0 NMTOCMNODE($1c.34dc) = %12.7
CMTONMNODE(%12.4,"prev") = $1c.34c0 NMTOCMNODE($1c.34dc,"prev") = %12.7
CMTONMNODE(%12.4,"next") = $1c.34d4 NMTOCMNODE($1c.34dc,"next") = %12.14
|
|