-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathshell.notes
More file actions
126 lines (88 loc) · 4.49 KB
/
Copy pathshell.notes
File metadata and controls
126 lines (88 loc) · 4.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
ORCA/Shell 2.0.6
Copyright 1999, Byte Works Inc.
Updated 2023
-- Change List --------------------------------------------------------------
2.0.6 1. The version number is 2.0.6. This affects the shell's version
call.
2. The CATALOG command now prints years 2000 or later properly.
2. Class 0 FASTFILE calls now represent years 2000 to 2039 as
specified in ProDOS 8 Technical Note #28.
3. Characters with an ordinal value of $8A are no longer filtered
out of a command's output when it is redirected.
2.0.5 B3 1. The version number is 2.0.5. This affects the shell's version
call.
2. SetLInfo did not properly record the istring field.
(Soenke Behrens)
3. Added TOK as the 3 letter code for $AF tokenized program files
These files are currently used by GSoft BASIC for source files.
4. The code used to copy disks using the COPY command has been
changed slightly to work around a bug in the Gus emulator. All
functionality is the same.
2.0.4 1. The version number is 2.0.4. This affects the shell's version
call.
2. Setting a variable to a value that was a multiple of 256
characters deleted the variable.
2.0.3 1. The version number is 2.0.3. This affects the shell's version
call.
2. The NextWildcard command no longer fails when GS/OS returns a
null for the options field in a GetFileInfo. (The major
symptom of this bug was an intermitant failure of the shell's
COPY command.)
2.0.2 1. The version number is 2.0.2. This affects the shell's version
call.
2. Single-character commands are recorded in the command history
buffer.
(Bryan Pietrzak)
3. Modification dates are set correctly when a directory is copied.
2.0.1 1. There are two new shell calls, KeyPress and ReadKey, described
below.
2. The shell now has an rVersion resource.
3. ChangeVector works for vector 1, again.
4. Spinner characters are sent to the shell call ConsoleOut,
rather than being written directly to the output file.
5. The version number is now 2.0.1. This affects the shell's
Version call.
6. Quit calls to a named file are intercepted correctly.
7. SetStdRefnum is called whenever the shell opens prefixes 10-12,
so applications can do GetStdRefnum.
-- Changes ------------------------------------------------------------------
KeyPress
--------
KeyPress (call number $011E for ProDOS style calls, $015E for GS/OS style
calls) is used to see if a key has been pressed. It should be used by all
programs designed to run under a shell. It is safe for use by programs that
do not run under a shell, where the program can check to see if there is an
error to decide whether to use the result of the call.
The parameter block has four integer fields (pCount is missing for ProDOS
calls):
pCount Parameter count. Must be 3.
key Key pressed. Undefined if available is 0.
modifiers Key modifiers, using the same format as EventAvail.
Undefined if available is 0.
available Set to 1 if a keypress is available, and 0 if there is
no key available.
If there is a key available, the key must be read using the shell call ReadKey.
In the 2.0.1 version of the shell, KeyPress checks first to see if the Event
Manager is active. If so, available is set to 1 if there is a keypress or
autokey event available, and 0 if not. If the Event Manager is not active,
KeyPress returns true if bit 7 of $00C000 is set, and 0 otherwise. In either
case, if a key is available, key is set to the ASCII value of the key (the most
significant byte is 0) and modifiers is set to the value that would be returned
by a GetNextEvent call that read the key.
ReadKey
-------
KeyPress (call number $011F for ProDOS style calls, $015F for GS/OS style
calls) is used to read a key. This call waits for a keypress if none is
available.
If the Event Manager is active, ReadKey waits for a keypress event or autokey
event, returning the key and modifier fields. (The most significant byte of
the key code is set to 0.) If the Event Manager is not active, ReadKey waits
until the most significant bit of $00C000 is 1, returns the key code and a
modifier field (formed from $00C025, but in the same format as the modifier
field returned by the Event Manager), and clears the keyboard strobe with a
store to $00C010.
The parameter block has three integer fields (pCount is missing for ProDOS
calls):
pCount Parameter count. Must be 3.
key Key pressed.
modifiers Key modifiers, using the same format as EventAvail.