David T. Lewis uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker-dtl.391.mcz ==================== Summary ==================== Name: VMMaker-dtl.391 Author: dtl Time: 5 January 2017, 7:35:14.1 pm UUID: eb3fd060-b323-4a7d-9b06-b4b23f599fc8 Ancestors: VMMaker-dtl.390 VMMaker 4.16.2 Old image support: Rescue five sound primitive assignments for updatePrimitiveTable for primitives that should be loaded from SouondGenerationPlugin, not from SoundPlugin. The following ancient primitives are still not loadable into the primitiive table for old image support: #primWaveTableSoundmixSampleCountintostartingAtpan #primFMSoundmixSampleCountintostartingAtpan #primPluckedSoundmixSampleCountintostartingAtpan #primSampledSoundmixSampleCountintostartingAtpan #oldprimSampledSoundmixSampleCountintostartingAtleftVolrightVol In addition #primitiveReadJoystick does not load from JoystickTabletPlugin when running on Linux, but this is confirmed to be an artifact of the function loader, which abandons the attempt to load a module if #initialiseModule answers false, as is the case in the Unix stub code implementation (so it should work on platforms that do support the joystick plugin). =============== Diff against VMMaker-dtl.390 =============== Item was changed: ----- Method: InterpreterPrimitives>>updatePrimitiveTable (in category 'primitive table') ----- updatePrimitiveTable "Make any run time updates to the primitive table that may be required for supporting the current running image. May be called by an interpreter that determines at run time that it needs to provide support for an older image. References: The SqueakJS dispatch table, which is known to run the full range of Squeak images, is used as a reference, along with comparison to the Squeak VM table as of January 2005 from VMMaker-tpr.22, which was the last version prior to converting images to support full closures (dtl Dec 2016)" | primitiveTableUpdated | <inline: false> <var: #primitiveTableUpdated type: 'static int'> primitiveTableUpdated == true ifFalse: [ primitiveTableUpdated := true. self useOldPrimitives ifTrue: [ self installPrimitive: #primitiveNext at: 65. self installPrimitive: #primitiveNextPut at: 66. self installPrimitive: #primitiveAtEnd at: 67. self installPrimitive: #primitiveBlockCopy at: 80. self installPrimitive: #primitiveValue at: 81. self installPrimitive: #primitiveValueWithArgs at: 82. self installPrimitive: 'primitiveCopyBits' from: 'BitBltPlugin' at: 96. self installPrimitive: #primitiveValueUninterruptably at: 123. self installPrimitive: 'primitiveReadJoystick' from: 'JoystickTabletPlugin' at: 146. self installPrimitive: 'primitiveWarpBits' from: 'BitBltPlugin' at: 147. self installPrimitive: 'primitiveFileAtEnd' from: 'FilePlugin' at: 150. self installPrimitive: 'primitiveFileClose' from: 'FilePlugin' at: 151. self installPrimitive: 'primitiveFileGetPosition' from: 'FilePlugin' at: 152. self installPrimitive: 'primitiveFileOpen' from: 'FilePlugin' at: 153. self installPrimitive: 'primitiveFileRead' from: 'FilePlugin' at: 154. self installPrimitive: 'primitiveFileSetPosition' from: 'FilePlugin' at: 155. self installPrimitive: 'primitiveFileDelete' from: 'FilePlugin' at: 156. self installPrimitive: 'primitiveFileSize' from: 'FilePlugin' at: 157. self installPrimitive: 'primitiveFileWrite' from: 'FilePlugin' at: 158. self installPrimitive: 'primitiveFileRename' from: 'FilePlugin' at: 159. self installPrimitive: 'primitiveDirectoryCreate' from: 'FilePlugin' at: 160. self installPrimitive: 'primitiveDirectoryDelimitor' from: 'FilePlugin'at: 161. self installPrimitive: 'primitiveDirectoryLookup' from: 'FilePlugin' at: 162. self installPrimitive: 'primitiveDirectoryDelete' from: 'FilePlugin' at: 163. self installPrimitive: 'primitiveDirectorySetMacTypeAndCreator' from: 'FilePlugin' at: 169. self installPrimitive: 'primitiveSoundStart' from: 'SoundPlugin' at: 170. self installPrimitive: 'primitiveSoundStartWithSemaphore' from: 'SoundPlugin' at: 171. self installPrimitive: 'primitiveSoundStop' from: 'SoundPlugin' at: 172. self installPrimitive: 'primitiveSoundAvailableSpace' from: 'SoundPlugin' at: 173. self installPrimitive: 'primitiveSoundPlaySamples' from: 'SoundPlugin' at: 174. self installPrimitive: 'primitiveSoundPlaySilence' from: 'SoundPlugin' at: 175. + self installPrimitive: 'primWaveTableSoundmixSampleCountintostartingAtpan' from: 'SoundGenerationPlugin' at: 176. + self installPrimitive: 'primFMSoundmixSampleCountintostartingAtpan' from: 'SoundGenerationPlugin' at: 177. + self installPrimitive: 'primPluckedSoundmixSampleCountintostartingAtpan' from: 'SoundGenerationPlugin' at: 178. + self installPrimitive: 'primSampledSoundmixSampleCountintostartingAtpan' from: 'SoundGenerationPlugin' at: 179. + self installPrimitive: 'primitiveMixFMSound' from: 'SoundGenerationPlugin' at: 180. + self installPrimitive: 'primitiveMixPluckedSound' from: 'SoundGenerationPlugin' at: 181. + self installPrimitive: 'oldprimSampledSoundmixSampleCountintostartingAtleftVolrightVol' from: 'SoundGenerationPlugin' at: 182. + self installPrimitive: 'primitiveApplyReverb' from: 'SoundGenerationPlugin' at: 183. + self installPrimitive: 'primitiveMixLoopedSampledSound' from: 'SoundGenerationPlugin' at: 184. + self installPrimitive: 'primitiveMixSampledSound' from: 'SoundGenerationPlugin' at: 185. - self installPrimitive: 'primWaveTableSoundmixSampleCountintostartingAtpan' from: 'SoundPlugin' at: 176. - self installPrimitive: 'primFMSoundmixSampleCountintostartingAtpan' from: 'SoundPlugin' at: 177. - self installPrimitive: 'primPluckedSoundmixSampleCountintostartingAtpan' from: 'SoundPlugin' at: 178. - self installPrimitive: 'primSampledSoundmixSampleCountintostartingAtpan' from: 'SoundPlugin' at: 179. - self installPrimitive: 'primitiveMixFMSound' from: 'SoundPlugin' at: 180. - self installPrimitive: 'primitiveMixPluckedSound' from: 'SoundPlugin' at: 181. - self installPrimitive: 'oldprimSampledSoundmixSampleCountintostartingAtleftVolrightVol' from: 'SoundPlugin' at: 182. - self installPrimitive: 'primitiveApplyReverb' from: 'SoundPlugin' at: 183. - self installPrimitive: 'primitiveMixLoopedSampledSound' from: 'SoundPlugin' at: 184. - self installPrimitive: 'primitiveMixSampledSound' from: 'SoundPlugin' at: 185. self installPrimitive: 'primitiveSoundInsertSamples' from: 'SoundPlugin' at: 189. self installPrimitive: 'primitiveSoundStopRecording' from: 'SoundPlugin' at: 191. self installPrimitive: 'primitiveSoundGetRecordingSampleRate' from: 'SoundPlugin' at: 192. self installPrimitive: 'primitiveSoundRecordSamples' from: 'SoundPlugin' at: 193. self installPrimitive: 'primitiveSoundSetRecordLevel' from: 'SoundPlugin' at: 194. self installPrimitive: 'primitiveInitializeNetwork' from: 'SocketPlugin' at: 200. self installPrimitive: 'primitiveResolverStartNameLookup' from: 'SocketPlugin' at: 201. self installPrimitive: 'primitiveResolverNameLookupResult' from: 'SocketPlugin' at: 202. self installPrimitive: 'primitiveResolverStartAddressLookup' from: 'SocketPlugin' at: 203. self installPrimitive: 'primitiveResolverAddressLookupResult' from: 'SocketPlugin' at: 204. self installPrimitive: 'primitiveResolverAbortLookup' from: 'SocketPlugin' at: 205. self installPrimitive: 'primitiveResolverLocalAddress' from: 'SocketPlugin' at: 206. self installPrimitive: 'primitiveResolverStatus' from: 'SocketPlugin' at: 207. self installPrimitive: 'primitiveResolverError' from: 'SocketPlugin' at: 208. self installPrimitive: 'primitiveSocketCreate' from: 'SocketPlugin' at: 209. self installPrimitive: 'primitiveSocketDestroy' from: 'SocketPlugin' at: 210. self installPrimitive: 'primitiveSocketConnectionStatus' from: 'SocketPlugin' at: 211. self installPrimitive: 'primitiveSocketError' from: 'SocketPlugin' at: 212. self installPrimitive: 'primitiveSocketLocalAddress' from: 'SocketPlugin' at: 213. self installPrimitive: 'primitiveSocketLocalPort' from: 'SocketPlugin' at: 214. self installPrimitive: 'primitiveSocketRemoteAddress' from: 'SocketPlugin' at: 215. self installPrimitive: 'primitiveSocketRemotePort' from: 'SocketPlugin' at: 216. self installPrimitive: 'primitiveSocketConnectToPort' from: 'SocketPlugin' at: 217. self installPrimitive: 'primitiveSocketListenOnPort' from: 'SocketPlugin' at: 218. self installPrimitive: 'primitiveSocketCloseConnection' from: 'SocketPlugin' at: 219. self installPrimitive: 'primitiveSocketAbortConnection' from: 'SocketPlugin' at: 220. self installPrimitive: 'primitiveSocketReceiveDataBufCount' from: 'SocketPlugin' at: 221. self installPrimitive: 'primitiveSocketReceiveDataAvailable' from: 'SocketPlugin' at: 222. self installPrimitive: 'primitiveSocketSendDataBufCount' from: 'SocketPlugin' at: 223. self installPrimitive: 'primitiveSocketSendDone' from: 'SocketPlugin' at: 224. self installPrimitive: 'primitiveDecompressFromByteArray' from: 'MiscPrimitivePlugin' at: 234. self installPrimitive: 'primitiveCompareString' from: 'MiscPrimitivePlugin' at: 235. self installPrimitive: 'primitiveConvert8BitSigned' from: 'MiscPrimitivePlugin' at: 236. self installPrimitive: 'primitiveCompressToByteArray' from: 'MiscPrimitivePlugin' at: 237. self installPrimitive: 'primitiveSerialPortOpen' from: 'SerialPlugin' at: 238. self installPrimitive: 'primitiveSerialPortClose' from: 'SerialPlugin' at: 239. self installPrimitive: 'primitiveSerialPortWrite' from: 'SerialPlugin' at: 240. self installPrimitive: 'primitiveSerialPortRead' from: 'SerialPlugin' at: 241. self installPrimitive: 'primitiveTranslateStringWithTable' from: 'MiscPrimitivePlugin' at: 243. self installPrimitive: 'primitiveFindFirstInString' from: 'MiscPrimitivePlugin' at: 244. self installPrimitive: 'primitiveIndexOfAsciiInString' from: 'MiscPrimitivePlugin' at: 245. self installPrimitive: 'primitiveFindSubstring' from: 'MiscPrimitivePlugin' at: 246. ] ] ! Item was changed: ----- Method: VMMaker class>>versionString (in category 'version testing') ----- versionString "VMMaker versionString" + ^'4.16.2'! - ^'4.16.1'! |
Free forum by Nabble | Edit this page |