Code: Select all
ark (atoi (substr button_text (+ (rindex button_text ";") 1))))
(_dialog_esc)
(returns TRUE)
)
)
)
)
Code: Select all
(macro _bookmark_action
(
(int event_type)
(string button_text)
(get_parm 0 event_type)
(switch event_type
DIALOG_MOVE_MENU
(
(get_parm 2 button_text)
(if (index button_text ";")
(returns TRUE)
;else
(returns FALSE)
)
)
DIALOG_PICK_MENU
NULL
DIALOG_F10
(
(get_parm 2 button_text)
(= _bookmark (atoi (substr button_text (+ (rindex button_text ";") 1))))
(_dialog_esc)
(returns TRUE)
)
)
)
)
According to an ex-Sierra employee that Lance contacted:Lance Ewing wrote:I've found some more data at the end of another partially used cluster that is further evidence of it having previously had BRIEF macros on it. The data appears to be two and a bit directory entries, which I think is suggesting that this cluster was previously used as a subdirectory that stored entries for BRIEF macros. The partial macro text for the BUFFERS.M file would have been one file in that sub-directory, and these two and a bit directory entries are suggesting that the sub-directory also contained RESTORE.M, RESTORE.CM and ROUTINES.CM. The size of the ROUTINES.CM file (according to the directory entry data) exactly matches the size of the file as shown in the following guy's copy of BRIEF here:
http://koti.mbnet.fi/juhal87/juhallebac ... BR/MACROS/
The above appears to be version 2.1 of BRIEF from about 1988.
For the other 2 files in the sub-directory directory entry data, the sizes do not exactly match the 2.1 versions, but they are very close in size (18215 vs 18318 in one case, 4004 vs 4054 in the other). Given the sizes are slightly larger, and given that SQ3 came out in 1989, I'm tempted to suggest that the version of BRIEF that the files related to might have been slightly newer that 2.1, but for all intents and purposes, I think we can say that the above URL linking to a copy of BRIEF that some guy has kindly placed there for all to view on the Internet is roughly what would have been in use at the time that the first SCI games were coming out. And I think it's quite likely that Sierra were using that editor.
I've done a bit of reading on BRIEF and it was apparently "the" programmer's editor of the 80s. It was very popular for developers building DOS apps at that time.
http://en.wikipedia.org/wiki/Brief_%28text_editor%29
One of the things it had was a LISP-like macro language, which all of those .M macro files are written in. The .CM files I think are the compiled versions, and I read someone online that its compiled to a bytecode of some sort. I wonder to what degree this LISP-like macro language influenced Jeff when he designed the SCI language. Sierra may have been using BRIEF pre-SCI, i.e. in the AGI days, and given that BRIEF is a reconfigurable editor (done via change the macros), then they were probably quite used to writing in that type of language prior to using SCI.
I'm guessing that the name of the partial sub-directory I found on the SQ3 disk was called MACROS, as shown in the above install of BRIEF. And if the macros were on the disk, chances are that a lot of the other files for BRIEF were also on there. I might be able to find evidence for this but as yet I have only been looking for recognisable text and not binary data."
This exploration is even revealing the names of some of the original development tools:"Not surprising to find traces of Brief considering it was the editor of choice of ALL programmers at Sierra until it was obsoleted by the move to Windows.
From KQ4 and LSL2 there is a PE.EXE mentioned, a SC.EXE and a MESSAGES.EXE. I think these might have been some of their tools, perhap PE for Picture Editor and SC for Script Compiler.
Lance Ewing wrote: I had some interesting comments from the ex-Sierra employee regarding the directory entry tables I'm finding. He confirmed that SC.EXE was the name of the script compiler tool, but he claims that MESSAGES.EXE was a message compiler that wasn't used until about 1992, perhaps initially with QFG3. I think he might be remembering incorrectly though because this directory entry table has a date on it of Sept 1988 against MESSAGES.EXE and that makes sense given that LSL2 was released in 1988. Perhaps there was an earlier version of MESSAGES.EXE that was an earlier incarnation of what he recalls.