A new version of VMMaker was added to project The Inbox:
http://source.squeak.org/inbox/VMMaker-bak.364.mcz==================== Summary ====================
Name: VMMaker-bak.364
Author: bak
Time: 5 August 2015, 3:47:17.348 pm
UUID: 06b91ee8-1ea3-4d7e-a3a4-da0ef88d6e3c
Ancestors: VMMaker-bak.363
simulate SNAPSHOT primitive in RSqueak (requires SystemTracer2 to be installed)
=============== Diff against VMMaker-bak.363 ===============
Item was changed:
----- Method: SmalltalkImage>>simulatePrimitive:args: (in category '*VMMaker-Interpreter') -----
+ simulatePrimitive: aPrimitive args: args
+ "simulate primitives in RSqueak"
+ "SNAPSHOT"
+ (aPrimitive = 97 or: [aPrimitive = 247])
+ ifTrue: [
+ Smalltalk at: #SystemTracer2 ifPresent: [:st |
+ |resuming|
+ Smalltalk processStartUpList: false.
+ [resuming := (st writeImage: Smalltalk imageName interactive: false) isStartingClone.]
+ on: FileExistsException
+ do: [ :e | e resume: (e fileClass forceNewFileNamed: e fileName)].
+ Smalltalk processShutDownList: false.
+ ^resuming]].
+ ^InterpreterProxy new primitiveFailFor: 255.!
- simulatePrimitive: aPrimitive args: args
- "simulate primitives in RSqueak"
- "IMAGE_NAME"
- aPrimitive = 121
- ifTrue: [^ self getSystemAttribute: 1].
- "SNAPSHOT"
- aPrimitive = 97
- ifTrue: [Smalltalk
- at: #SystemTracer2
- ifPresent: [:st | ^ st writeImage: Smalltalk imageName]].
- "SNAPSHOT_EMBEDDED"
- aPrimitive = 247
- ifTrue: [Smalltalk
- at: #SystemTracer2
- ifPresent: [:st | ^ st writeImage: Smalltalk imageName]].
- ^ InterpreterProxy new primitiveFailFor: 255
- !