[comp.sys.mac.programmer] Update Modules?

mlab2@kuhub.cc.ukans.edu (02/05/91)

In article <3272.27AD3EBE@blkcat.fidonet.org>, Joe.Vogel@f421.n109.z1.fidonet.org (Joe Vogel) writes:
> I'am trying to figure out how to write an update module in LSP? I want 
> to be able to change Windows in a current application and expand the 
> main program code.  Can anyone help direct me toward this info.  I 
> understand how to change the resources but not the actual coding.... 
> Thanks in advance...
>         Joe Vogel, Joe.Vogel@f421.n109.z1.fidonet.org
>       via The Black Cat's Shack's FidoNet<->Usenet Gateway
>           blkcat.fidonet.org   and   Fidonet 1:109/401

Perhaps there is a more 'compact' way to do this, but it occurs to me that each
code segment of your app is also a 'CODE' resource in the compiled app.  SInce
you know how to change the resources, swap in the new CODE resources as well. 
If you simply made changes to one code segment, then you'll only need replace
that one CODE segement.

Sorry, I think I spoke too fast.  It occurs to me now that perhaps the main
CODE segment will differ as well.  I'm just stabbing though, I'm still pretty
much in the dark as to how programs are compiled and then loaded by the Mac.

john calhoun

time@tbomb.ice.com (Tim Endres) (02/05/91)

In article <28369.27ada07d@kuhub.cc.ukans.edu> you write:
|> Joe.Vogel@f421.n109.z1.fidonet.org (Joe Vogel) writes:
|> I'am trying to figure out how to write an update module in LSP? I want 
|> to be able to change Windows in a current application and expand the 
|> main program code.  Can anyone help direct me toward this info.  I 
|> understand how to change the resources but not the actual coding.... 
|> Thanks in advance...
|>         Joe Vogel, Joe.Vogel@f421.n109.z1.fidonet.org
|>       via The Black Cat's Shack's FidoNet<->Usenet Gateway
|>           blkcat.fidonet.org   and   Fidonet 1:109/401

> Perhaps there is a more 'compact' way to do this, but it occurs to me that each
> code segment of your app is also a 'CODE' resource in the compiled app.  SInce
> you know how to change the resources, swap in the new CODE resources as well. 
> If you simply made changes to one code segment, then you'll only need replace
> that one CODE segement.
> 
> Sorry, I think I spoke too fast.  It occurs to me now that perhaps the main
> CODE segment will differ as well.  I'm just stabbing though, I'm still pretty
> much in the dark as to how programs are compiled and then loaded by the Mac.

Specifically, you will need to update CODE segment 0 which is your jump
table (since the offsets to routines will have changed in any modified
CODE segments) and then update all modified CODE segments as well as
add any new ones.

tim.


-------------------------------------------------------------
Tim Endres                |  time@ice.com
ICE Engineering           |  uupsi!ice.com!time
8840 Main Street          |  Voice            FAX
Whitmore Lake MI. 48189   |  (313) 449 8288   (313) 449 9208