View Single Post
Old 12th April 2009, 23:42   #26  |  Link
blutach
Country Member
 
blutach's Avatar
 
Join Date: Sep 2004
Location: is everything!
Posts: 6,499
First search for RND in your DVD. 99.9% of DVDs don't have them.

If you find one that does, then a single trace can only emulate one of the possible outcomes of a RND. e.g. the following statement has 2 possible outcomes (1 and 2).
Quote:
[78 00 00 00 00 02 00 00] 1 Set gprm(0) ?=(rnd) 2
These will usually be tested in the next statement or somewhere not too far down the line. You obviously can't eliminate entirely any PGCs referred to by a test of a gprm after a RND. You can only eliminate out-of-range values.

So, if you see this in the next 2 statements, then each of PGCs 1 and 2 are visited (you can do a number of traces until all the values of the RND are used, if you like):
Quote:
[20 A4 00 00 00 01 00 01] 2 if ( gprm(0) == 1 ) then { LinkPGCN PGC 1 }
[20 A4 00 00 00 02 00 02] 3 if ( gprm(0) == 2 ) then { LinkPGCN PGC 2 }
But the next 3 statements will always be false and therefore unless PGCs 3-5 are called by other PGCs, they can be eliminated (easiest to just delete statements 4-6 and then do Delete Uncalled PGCs)
Quote:
[20 A4 00 00 00 03 00 03] 4 if ( gprm(0) == 3 ) then { LinkPGCN PGC 3 }
[20 A4 00 00 00 04 00 04] 5 if ( gprm(0) == 4 ) then { LinkPGCN PGC 4 }
[20 A4 00 00 00 05 00 05] 6 if ( gprm(0) == 5 ) then { LinkPGCN PGC 5 }
I hope you understand this now.

Regards
__________________
Les

Only use genuine Verbatim or Taiyo Yuden media.

Last edited by blutach; 13th April 2009 at 04:02.
blutach is offline   Reply With Quote