Click for: WEBPAGE INDEX
THE STACK SIZE PROBLEM IS SOLVED: DOWNLOAD pretender.lha
:Sorry, I forgot to give the download link: Doh!
pretender.lha last updated == 11:44pm Sunday 16 Mar 2003
With the stack size solving mechanism pretender
what happens is this: You boot up say,
there is no user-startup instructions needed just type eg:
gs8 -sDEVICE=epson -sOutputFile=ram:tiger GS8:examples/tiger.eps
and as if by magic, the stack will automatically get reset to whatever
you want eg 150000, the 3 assigns will automatically happen
and eg GS8:bin/gs_000 will get run with the above parameters.
When GS8:bin/gs_000 has finished the 3 GS8 assigns can be automatically
removed if you want. The stacksize is also reverted to its original value.
Furthermore the mechanism allows same thing to be done for any other
stack hungry programs, no recompiling necessary.
How does this mechanism function?
Well it is done via 2 redirection programs called pretender and pretendee.
In addition you would create some ascii files which deal with the assigns,
stacksize, and actual program to be run.
This is how it would be done for eg my port of GS8
copy pretendee c:gs8
|
copy pretender c:
|
Then edit a parameter ascii file c:gs8.0 this must have the same
pathname as c:gs8
it would be eg:
prescript "c:gs8prescript" /* sets up GS8: GS8Data: GS8Fonts: */
|
stack 150000
|
prog "GS8:bin/gs_000" /* actual program to run: can be anything */
|
postscript "c:gs8postscript" /* eg remove the assigns */
|
The file c:gs8prescript
might say:
assign GS8: something/gs8.00
|
assign GS8Data: GS8:lib
|
assign GS8Fonts: somewhere:fonts6.00_std somewhereelse:fonts6.00_oth
|
and finally c:gs8postscript
(thats my sense of humour using
the word postscript in its literal sense! I try.)
this might say:
assign GS8:
|
assign GS8Data:
|
assign GS8Fonts:
|
This is a naive assign removal. To do it properly you really need assign
counts, however this is trickier than it looks on the surface. I'll see
if I can create a mechanism, there is a subtle problem that needs to
be overcome to do assign counts. I'll try to create a proper assign
removal with assign counts maybe over the next week which will get
uploaded to this website. Click here to for discussion of the
assign count problem.
|