Skip to content

Latest commit

 

History

History
117 lines (101 loc) · 3.43 KB

File metadata and controls

117 lines (101 loc) · 3.43 KB

String inventory

Printable runs of four or more characters in cdi_merlin, filtered to things that are plausibly language: prose (a space and two words of three or more letters, one of them four or more), an identifier-shaped run containing four consecutive lower-case letters, a device path, or a ****-fenced panic.

Two pieces of tidying are applied and both are mechanical. A string literal placed immediately after a function picks up that function's epilogue bytes — 4E5D 4E75 is UNLK A5; RTS and renders as N]Nu — so those, and the one or two opcode bytes in front of a **** panic, are stripped and the offset advanced to match. And runs of concatenated ...DD names are split into their parts, because the linker packs them with no separator the filter can see.

68000 object code produces enormous amounts of accidental ASCII; what this filter drops is noise like PORC n and DXOJ@g, not content.

Regenerate the unfiltered view with python tools/cdistrings.py.

What these strings support is in docs/03-executable.md and docs/08-game-architecture.md.

identity (3)

000048  cdi_merlin
000295  Copyright 1994, Philips Interactive Media, all rights reserved.
0002d7  MerlinsApprentice

paths and modules (8)

0003f8  boltlib0.blt
0004a6  help.rtf
00fd7c  /nvr/csd
0127c8  tcanim.toc
015544  /nvr/
0189c0  cdi_bumper
0189cb  cdi_bumpdata
01d66e  /nvr/csd

puzzle and potion records (30)

0018fa  PondDD
001901  FlasksDD
00190a  StalacDD
0023f4  MirrorDD
0023fd  PlaqueDD
002406  OctagonDD
002410  TileDD
004a0e  SeedsDD
004a16  LeavesDD
004a1f  BubblesDD
004a29  SnowflakDD
004a34  GemsDD
004a3b  DemonsDD
006db0  GraveDD
006db8  ParchDD
006dc0  TabletDD
00849a  WindowDD
0084a3  StarDD
0090aa  PlanetDD
0090b3  DoorDD
0090ba  SphereDD
00a168  RavenDD
00a170  LeafDD
00a177  SnakeDD
00a17f  SkeltnDD
00a188  SpiderDD
00a191  QuartzDD
00ac64  ForestDD
00ac6d  LabratDD
00ac76  CavernDD

diagnostics and panics (28)

0001f8  **** Stack Overflow ****
000212  **** Can't install trap handler ****
000239  ****
00c930  BOSS_Init:  NumBitsPerVar = %d.  Should be 1,2,4, or 8.            -- using 8.
00c980  BOSS: NVRAM is out of date
00c99c  BOSS: NVRAM is missing or invalid, removing
00ce7c  BOSS: CurrentState = %d
00d4a8  BOSS: Returned from CurrentState = %d
00d4cf  BOSS_EXECUTE: Invalid Help ID
00d4ee  BOSS_Execute: Software Error occurred in state %d
00d521  BOSS_Execute:  Illegal event %d returned from state %d
00d69e  BOSS_Execute:  Software Error occurred in state %d
00dad4  BOSS_Execute: Illegal event %d returned from state %d
00dbc4  BOSS: Unable to play help audio correctly
00dbef  BOSS: Unable to stop jukebox play
00de6c  BOSS_NVPack: TokenNum value = %d
00de8d  exceeds the number of game tokens
00dfc2  BOSS_NVUnPack: TokenNum value = %d
00e0f6  pack: number of bits to pack into = %d
00e2a0  pack: number of bits to unpack from = %d
00fd85  Traffic Cop Could Not Open Animation:%d
00fdae  Traffic Cop Could Not play Animation:%d
00fdd7  Traffic Cop Could Not Close Animation:%d
0107fe  Traffic Cop Could Not Open Animation:%d
010827  Traffic Cop Could Not play Animation:%d
010850  Illegal Animation Definition:%d.  No Menubar should be allowed.
010891  Traffic Cop Could Not Close Animation:%d
01c1fa  Unexpected signal number $%X - Application Terminating

everything else the filter kept (1)

0210b3  0               HHHHHHHHHH       BBBBBB