Where in the code is the image saved and loaded?
Last updated at 5:29 am UTC on 23 May 2017
When the user selects 'save' or 'save and quit' from the World menu, then
Smalltalk snapshot: true andQuit: false
or
Smalltalk snapshot: true andQuit: true
is called. This saves the .image file file.
Actually the method #snapshot:andQuit:embedded: is called and there the primitive #snapshotPrimitive or snapshotEmbeddedPrimitive do the actual work of writing the image. When quiting the program execution stops in this method and when starting it resumes right at the point where it stopped, so actually the second part of #snapshot:andQuit:embedded: is the startup procedure for Squeak.
See also
The Squeak Image: What's In It and How To Make It Smaller