Normal video.
cursorOff
Turn off the cursor.
AimSystemCall OS-Interface
cursorOn
Turn on the cursor.
dlsableCursorPannlng
Disables panning when the cursor reaches any viewport boundary.
dlsableJoydlskPannfng
Disables panning with the joydisk.
enableCursorPannfng
Enables panning when the cursor reaches any viewport boundary.
enableJoydfskPannfng
Enables panning with the joydisk.
getDisplayState: buff
Return the 36 word status report of the display system.
getMouseBounds
Get the limits of mouse movement as a rectangle - upper left in DO, lower right in 01.
getVlewport
Return the upper left position of the viewport within the display bitmap.
setMouseBounds: upperXY 10werRight: 10werXY
Set the limits of mouse movement to a rectangle - upper left in 01, lower right in 02.
setVlewport: xyCoord
Set the upper left position of the viewport in the display bitmap.
timeOutOff
Disables automatic screen saver.
timeOutOn
Enables automatic screen saver.
turn Dlsp layOff
Sets the display to be blanked.
turn DisplayOn
Sets the display to be visible.
whiteOnBlack Inverse video.
AimSystemCall OS-Interface
system-environment
configurationAddress
Get the address of the configuration block of the machine running this Smalltalk.
copyrightAddress
Get the address of the copyright string for this Smalltalk interpreter.
InterpreterVerslonAddress
Get the address of the string identifying the version of this Smalltalk interpreter.
invocationArgumentsAddress
Get the address of the argument array for this invocation of Smalltalk.
InvocationEnvironmentAddress
Get the address of the environment array for this invocation of Smalltalk.
machinelDAddress
Get the address of a string that identifies the operating system and machine upon which Smalltalk is running.
timeCorrectionDifference
Get a Smalllnteger representing the number of seconds difference between UTek time (GMT) and local time.
system-event operations clearAlarm
Clear the alarm used by the graphics.
eventsDlsable Turn off events.
events Enable
Turn on events. A side effect of this call is to set keyboard code to zero.
eventSignalOn
Produce event signals.
getAlarmTime
Get the millisecond timer.
Aim System Call OS-Interface
setAlarmTlme: time
Set the millisecond timer to the desired time.
setKeyboardCode: aCode
Set the keyboard code - 0 sets keyboard to output event codes and 1 sets the keyboard to output ANSI terminal code. Event codes are what Smalltalk expects.
termlnalOff
Turn off the terminal emulator.
terminal On
Turn on the terminal emulator.
Rationale
AimSystemCall is an abstract class that implements protocol related to the display subsystem of Tektronix 4000 series bitmapped workstations. These display operations are implemented at this level to be inherited by concrete subclasses for various operating systems. Other system call protocol that concrete subclasses have in common has been implemented at this level. Instance variables are defined for data passed in registers when making a system call. A class variable is defined for the string terminator that subclass operating systems have in common.
Discussion
The protocol here is a template for subclasses. There is no occasion upon which you should send a message to this class. To make a system call, create an instance of a subclass. Read about the system call class for your operating system in this manual. It will implement the protocol found here, plus additional protocol which is operating system dependent.
Class Protocol
Class initialization
contains one method which sets the value of the class variable. It calls the abstract superclass method of the same name, which returns self. The major work of initializing is done in a subclass method.Environment variables
methods are implemented by a subclass.File names
methods answer information about file and directory names, including the complete path from root, the path relative to Disk, the character which separates levels of the path, the backup file suffix, and concatenates or separates file and directory names. These methods are generally used for parsing.AimSystemCall OS-Interface
General inquiries
methods are implemented by a subclass, except forstringTerminator, which returns the character the operating systems expect at the end of strings, pack:intoRegisterWith:, which packs two integers into a 32 bit word, and smalltalklnterpreterVersionStrlng, which returns the version number of the interpreter in a String.
Portable file operations
methods are implemented by a subclass, except forcloseFile:, which closes a file, and remove:, which removes a file from its directory.
Those two operations are implemented here because subclasses use the same selector to achieve the result of each portable message.
Portable subtask operations
are operations that Smalltalk requires from the operating system in order to run a Subtask, a spawned child process from the operating system's point of view. AimSystemCall implements the "execute Utility" methods which start a subtask. The other methods in this message category areimplemented by a subclass.
System-display operations
are methods which enable or disable display attributes.They are implemented here because they are applicable for all immediate subclasses.
System-environment
methods return the address of environment variables at the time Smalltalk was invoked, the address of command line arguments, and information about the software, including the copyright address, the address of the interpreter version, and the adjustment amount between UTek and Smalltalk time. An address returned by one of these methods can be converted to a String by sending the address as the argument to the Stringinstance creation
message fromCStrlng:.System-event operations
are methods which enable or disable event attributes. Events are user-interface occurrences, such as a key-press, mouse movement, and joydisk movement. The built-in alarm (timer) and terminal emulator are also included in the category of events. Events are implemented here because they are applicable for all immediate subclasses.Instance Protocol
Initialize-release
has three methods which set the values of the register instance variables plus several methods, overridden by subclasses, which set up the operation and arguments to a system call.Accessing
methods return the values of the "out" instance variables.AimSystemCali OS-Interface
Errors
has one method that returns the value of errno.Execution
has two methods. displaylnvoke and invoke. which call the proper primitive to communicate with the operating system. and systemlnvoke which calls a subclass method to make a primitive call.Operation type
has methods to set the operationType instance variable and a method that sets and one that returns the value of operation.Portable subtask operations
are operations which an instance of a subclass would perform for a Subtask. such as answer the exit code. the interrupt ID. or the task ID of the Subtask. The methods are implemented by a subclass. exceptterminatedSubtasklD. which returns the value of DOOut.
Related Classes
Subclasses:
UniflexSystemCa" (UniFLEX only) UTekSystemCa" (UTek only)
You might also want to look at the superclass. AbstractSystemCal1.