158:
accessory only when that application was active. It could then be activated while the application was run and would then disappear when the application was terminated through the Quit function. (Similarly, the FKEY resources could be installed either within the System so as to be universally available, or within an application so as to be available only when that application was active). As a resource numbering scheme was implemented for marking resources as belonging to another resource of some particular type and number in the same file, such as a DA ('DRVR'), it was possible for desk accessories to have a limited "resource fork" of their own within the file they were contained in; the mover utility recognised such resources and moved them along with the actual DA code resource they were associated with.
309:"Desk accessories are hard to write because they're constructed so differently from the host programs they depend on. They're written as device drivers – which means, among other things, that they are table-driven, that they have to be small (about 8K bytes at the most), and that they have to be very careful not to alter the environment they work in."
205:
284:
For much the same reason as desk accessories were used in Mac OS and in GEM, namely to allow more than one simultaneous program on a system which did not support multitasking, the concept of desk accessories was extended to Palm OS by third-party developers. DA are applets launched by an application
136:
were initially implemented as DAs. Third-party DAs such as spelling checkers could be purchased. It was considered hard to write a DA, especially early on when there was little in the way of developer tools. However, since on the early Mac OS drivers did not have any special privileges, writing a DA
288:
A desk accessory program is a Palm resource database of type 'DAcc', specified to include a single 'code' #1000 resource that contains the binary code implementing the desk accessory. Global or static variables are not available, but a DA can call user interface APIs. It is possible for a DA to
157:
when not installed in the system file. If installed within a separate application, such as MacWrite, their functionality would be accessible only when that application was running. That is, a desk accessory installed as a resource within an application would appear on the Apple menu as a desk
98:(DA) was a piece of software written as a device driver, conforming to a particular programming model. The purpose of this model was to permit very small helper-type applications to be run concurrently with any other application on the system. This provided a small degree of
292:
DAs provide a modicum of multitasking. However, unlike in Mac OS and GEM, after the user is done working with the DA, it must be closed to return to the underlying application. It is possible to pop up one DA over another DA, though this might deplete stack space.
218:
resembled the
Macintosh closely in many respects. One example was the presence of desk accessories, for the same reason: to allow multiple programs to be used in a system that only supported one full application at a time (although GEM desk accessories used
253:
Since each desk accessory loaded reduced the amount of memory available for programs, one technique for temporarily increasing available space was to rename one or more .ACC files to have a different suffix (usually .ACX) and restart GEM. On the
285:
or hack serving as a DA launcher. The DA launcher may watch for keystrokes or other system events and pop up a predefined desk accessory. Many general-purpose Palm OS launcher applications are capable of launching DAs as well.
238:, with names ending with .ACC (Accessory) rather than .APP (Application). Each .ACC file could support multiple accessories; all three of the standard GEM accessories (Calculator, Clock and Print Spooler) were provided by
144:
utility was used to change the configuration of DAs. Because DAs were not installed or launched in the same way that applications were, the user could not drag and drop DAs into or out of the system. They resided in the
173:.x) for backward compatibility. Under System 7 and later, DAs could be moved and renamed using the Finder like normal applications, removing the need for Font/DA Mover and confining suitcases to
185:
for a desk accessory program under System 7 and later is roughly a reversed version of the application icon, with the writing hand on the left side instead of the right.
169:
feature, the need for DAs diminished greatly, and developers were encouraged to develop small applications instead. The system continued to run DAs (and still does up to
289:
have user interface resources in its database. The desk accessory launcher transfers execution to the first byte of the 'code' #1000 resource.
188:
A similar mechanism to allow small utility programs to run along with regular applications was also present in the operating system for the
356:
75:
121:
and rounded corners was reserved for the use of DAs so that the user could distinguish it from the windows of the hosting application.
351:
109:. It was installed in the driver queue, and given time periodically and co-operatively as a result of the host application calling
153:, like actual drivers, though they could be installed in any file whose resources were loaded into the memory, and were stored in
117:. A DA was permitted to have a user interface as long as it was confined to one main window. A special window frame with black
193:
74:, provided pop-up calculator, alarm, calendar and other functions for single-tasking operating systems like MS-DOS using
215:
322:
361:
224:
154:
166:
99:
55:
234:
From a programming point of view, desk accessories were implemented, like other GEM applications, as
67:
47:
43:
335:
133:
125:
220:
118:
54:
and
Macintosh desk accessories, used special programming models to provide a small degree of
182:
129:
71:
51:
228:
91:
276:
file manager, which was supplied with almost unchanged versions of
Calculator and Clock.
235:
87:
345:
178:
174:
150:
106:
242:. Installation was simply a matter of placing the .ACC in the correct directory -
177:
management. When a DA was run under System 7, it always executed in the Finder's
189:
114:
17:
39:
170:
162:
27:
Small application that can be run concurrently with any other application
102:
on a system that initially did not have any other multitasking ability.
269:
258:
255:
209:
204:
58:
on systems that initially did not have any other multitasking ability.
273:
203:
137:
was, with practice, no more difficult than any other application.
50:
with any other application on the system. Early examples, such as
124:
Typical early DAs included the
Calculator and Alarm Clock. The
261:, for example, the Snapshot accessory was shipped as
268:Desk accessories continued to be supported in
66:Early personal information managers, such as
8:
265:and had to be renamed to .ACC prior to use.
105:DAs were implemented as a special class of
325:. folklore.org. URL accessed May 20, 2006.
302:
76:terminate-and-stay-resident techniques
7:
46:that can be run concurrently in a
44:transient or auxiliary application
25:
208:The supplied desk accessories in
321:Andy Hertzfeld (October 1981) .
86:Introduced in 1984 as part of
1:
338:, for web browser accessories
62:Personal information managers
165:, which included a standard
357:Macintosh operating systems
378:
352:Graphical user interfaces
246:in earlier versions, and
225:cooperative multitasking
167:cooperative multitasking
212:
207:
250:in GEM/3 and later.
88:the operating system
161:With the advent of
48:desktop environment
336:Helper application
213:
16:(Redirected from
369:
362:Palm OS software
314:
307:
264:
249:
245:
241:
21:
377:
376:
372:
371:
370:
368:
367:
366:
342:
341:
332:
318:
317:
308:
304:
299:
282:
262:
248:\GEMAPPS\GEMSYS
247:
243:
239:
202:
92:Apple Macintosh
84:
82:Apple Macintosh
64:
28:
23:
22:
15:
12:
11:
5:
375:
373:
365:
364:
359:
354:
344:
343:
340:
339:
331:
328:
327:
326:
323:Desk Ornaments
316:
315:
301:
300:
298:
295:
281:
278:
236:DOS .EXE files
221:task switching
201:
198:
149:file's 'DRVR'
96:Desk Accessory
83:
80:
70:and Borland's
68:Norton Desktop
63:
60:
32:desk accessory
26:
24:
18:Desk Accessory
14:
13:
10:
9:
6:
4:
3:
2:
374:
363:
360:
358:
355:
353:
350:
349:
347:
337:
334:
333:
329:
324:
320:
319:
312:
306:
303:
296:
294:
290:
286:
279:
277:
275:
271:
266:
260:
257:
251:
237:
232:
230:
226:
222:
217:
211:
206:
199:
197:
195:
191:
186:
184:
180:
179:address space
176:
172:
168:
164:
159:
156:
152:
148:
143:
142:Font/DA Mover
138:
135:
131:
127:
126:control panel
122:
120:
116:
112:
108:
103:
101:
97:
93:
89:
81:
79:
77:
73:
69:
61:
59:
57:
53:
49:
45:
41:
37:
33:
19:
310:
305:
291:
287:
283:
267:
263:SNAPSHOT.ACX
252:
240:CALCLOCK.ACC
233:
214:
187:
160:
146:
141:
139:
123:
111:SystemTask()
110:
104:
100:multitasking
95:
94:computer, a
85:
65:
56:multitasking
35:
31:
29:
155:"suitcases"
113:within its
42:is a small
346:Categories
297:References
190:Apple IIGS
140:A special
229:Macintosh
227:like the
194:Apple IIe
151:resources
134:Scrapbook
119:title bar
115:main loop
40:computing
330:See also
313:Sep 1986
244:\GEMBOOT
223:and not
171:Mac OS 9
163:System 7
90:for the
72:Sidekick
52:Sidekick
34:(DA) or
280:Palm OS
270:ViewMAX
259:PC-1512
256:Amstrad
210:OpenGEM
130:Chooser
36:desklet
274:DR-DOS
272:, the
181:. The
147:System
132:, and
107:driver
311:Byte
192:and
183:icon
175:font
231:.)
216:GEM
200:GEM
38:in
348::
196:.
128:,
78:.
30:A
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.