Updated files to prepare for RC 0.93 release.

This commit is contained in:
Patrick Kloepfer 2020-02-09 23:23:42 -05:00
parent 2d001b9351
commit 415b219a19
17 changed files with 175 additions and 175 deletions

View File

@ -1,10 +1,10 @@
# A2osX Command Guide
### Updated January 27, 2020
### Updated February 10, 2020
This Guide provides information on all the A2osX commands and utilities. This Guide helps you not only learn the purpose of each command but also what options a command supports and what arguments it either supports or requires.
This Guide provides information on all the A2osX commands and utilities. It helps you not only learn the purpose of each command but also what options a command supports and what arguments it either supports or requires.
A2osX comes with a nice variety of system, file, network and data utilities -- what we refer to as external commands. This just means that each of the following commands or utilities is built as a separate BIN or executable file that runs under A2osX. The source for all of these external commands is readily available, so you can make your own or modify these as your needs dictate.
A2osX comes with a variety of system, file, network and data utilities -- what we refer to as external commands. This just means that each of the following commands or utilities is built as a separate BIN or executable file that runs under A2osX. The source for all of these external commands is readily available, so you can make your own or modify these as your needs dictate.
>Note: there are some **internal** commands built into the shell (the interactive prompt) such as CD (change directory) or PWD (print working directory). Those commands are discussed in-depth in the **[Shell Developers Guide](.Docs/Shell%20Developers%20Guide.md).**
@ -59,7 +59,7 @@ In KCONFIG you can set:
- Machine Timing, either 60 (Default) or 50Hz. This should match the power/timing of your system. A2osX uses the Apple's VBL signal and this setting to correctly produce 1-Second and 1/10th-Second events which are used to preemptively switch tasks. If this setting does not match your actual machine timing, timing of task switches will be slower/faster by 10-20% but otherwise A2osX should operate normally.
- CHRoot to /RAMx, either Disabled (Default) or Enabled. This feature currently not implemented.
- Preemptive Mode, either Disabled (Default) or Enabled. See discussion on A2osX Preemptive Mode in the A2osX User Guide.
- TTYs, between 1 and 4, default is 2. This is the number of Virtual Terminals configured on your system. Please note, increasing and decreasing the number of virtual terminals can have a significant impact on the amount of memory used by the system, which in turns impacts the amount of free memory available to run your A2osX programs and scripts.
- TTYs, between 1 and 8, default is 2. This is the number of Virtual Terminals configured on your system. Please note, increasing and decreasing the number of virtual terminals can have a significant impact on the amount of memory used by the system, which in turns impacts the amount of free memory available to run your A2osX programs and scripts.
- Slots 1-7, Enabled (Default) or Disabled. Certain drivers in A2osX such as the ones for a Super Serial Card (SSC) or Ethernet Card search for a matching hardware device starting in Slot 1. If you disable any of the slots in KConfig, these slots will be skipped in the search during driver load/initialization. One use of this feature, if you have 2 SSCs in your system with the 1 in slot 1 connected to a printer and another in slot 2 connected to a PC for use with ADTPro. Setting Slot 1 to Disabled, will have A2osX skip the card in Slot 1 connected to the printer from being used by the KM.VEDRIVE driver loaded during A2osX startup.
### LOGIN
@ -217,16 +217,14 @@ It looks like the same results, but instead of LS simply outputting all of its r
edit file
![](../.screen-shots/ScreenShot.EDIT.png)
The **edit** command allows the user to interactively read and edit standard text files in A2osX. If you do not specify a file name on the command line, you will be prompted to enter one when you save your work (control-S). Consult the help screen below for a list of the special keys that can be used while editing a file.
![](../.screen-shots/ScreenShot.EDIT%20Help.png)
>A note for the touch typists!: While **edit** is not a word processor, it still is one of the most complex programs included in A2osX. It does a lot! A side affect of this, and due to the lack of a keyboard buffer in the Apple //e, if you try to speed type while using EDIT some keystrokes may be dropped. This is most noticeable when using the AppleWin emulator set to 1.0 speed. Changing the emulator speed to at least 2.0 will significantly reduce or eliminate the dropped keys.
![](../.screen-shots/ScreenShot.EDIT.png)
There is a help screen
![](../.screen-shots/ScreenShot.EDIT%20Help.png)
### FORMAT
| Command | Options |
@ -263,18 +261,18 @@ the errand process by its PID found in the displayed process list (i.e. KILL 27
ls [-a] [-c|-f|-l] [-r] filespec
![](../.screen-shots/ScreenShot.LS.png)
The LS command is probably the most used and useful of all commands available to the A2osX user. **ls** allows you to list the names of the files and directories in the current or specified directory. If supplied with the all check (**-a**) **ls** will include the special directories **.** and **..**. The recurse check (**-r**) tells **ls** to list files and directories of any directory listed (recursively). The display checks (**-c -f and -l**) tell **ls** change the format of the display to a single column of just file/directory names (**-c**), to a single column that includes full paths (**-f**) or a listing with extended file information (**-l**) which includes file ownership, permissions, date/time, etc.. You can pass the **ls** command a *filespec* that includes a directory name and or wild card spec for filtering the listing. For example the command `LS ../MYDIR/FT*` would only list files that begin with FT and are found in the MYDIR sub directory of the parent of the current directory.
![](../.screen-shots/ScreenShot.LS.png)
### LSDEV
lsdev
![](../.screen-shots/ScreenShot.LSDEV.png)
Displays a listing of the currently defined devices in the running A2osX system as seen in the screenshot below.
![](../.screen-shots/ScreenShot.LSDEV.png)
### LSOF
lsof
@ -416,6 +414,8 @@ The **httpget** command is a utility for retrieving a network page or message fr
ipconfig [-d|-e|-s]
![](../.screen-shots/ScreenShot.IP1.png)
The **ipconfig** command will display the current network configuration for your system. In some cases, if the network drivers and libraries are loaded but not configured, **ipconfig** may configure your system by obtaining (through DHCP) or setting (statically through config files) your IP address and other settings. Optionally you can force a set/reset of your configuration. If Network services are not started when you use this command, an error message will be displayed saying that TCP/IP is not bound to any device.
### NETSTAT

View File

@ -1,6 +1,6 @@
# A2osX Developers Guide
### Updated January 27, 2020
### Updated February 10, 2020
This Guide provides information on the development process and tools used to build A2osX. The core of A2osx is currently, and likely always will be, developed in 65C02 Assembly Language. Assembly is used for the speed, compactness and efficient memory management necessary for the central core, or kernel, of A2osX. Currently all of the programs distributed with A2osX are also written in Assembly, however, a it is expected that a C compiler or preprocessor that creates Assembly will be made available in the future.
@ -85,7 +85,7 @@ Use Notepad++ which you can download from....
#### S-C MASM color scheme for Notepad++
...drop _Tools/userDefineLang.xml in %APPDATA%\Notepad++
THere is a userDefinedLang.xlm file in the .Tools dir that you will want to copy to Notepad... then when editing ASM files (.S) you can change your language to S-C MASM 65C02 and notepad++ will do the proper highlighting.
There is a userDefinedLang.xlm file in the .Tools dir that you will want to copy to Notepad... then when editing ASM files (.S) you can change your language to S-C MASM 65C02 and notepad++ will do the proper highlighting.
## License
A2osX is licensed under the GNU General Pulic License.

View File

@ -1,6 +1,6 @@
# A2osX Glossary
### Updated January 27, 2020
### Updated February 10, 2020
This document contains a glossary of terms used throughout the A2osX documentation.
@ -24,6 +24,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**access byte**: An attribute of a ProDOS file that determines what types of operations, such as reading or writing, may be performed on the file.
**ADTPro**: Apple Disk Transfer ProDOS (ADTPro) transfers physical disks and disk images between Apple II-era computers and the modern world. It can even get your Apple running if you don't have any disks at all. The host (server) component runs on today's computers with Java, and the 8-bit Apple (client) component runs on any Apple II computer with 64k of memory or more.
**algorithm**: A step-by-step procedure for solving a problem or accomplishing a task.
**American Standard Code for Information Interchange**: See ASCII.
@ -58,6 +60,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**application**: A stand-alone program that performs a specific function, such as word processing, drawing, or telecommunications. Compare, for example, library or device driver.
**archive file**: An archive file is a file that is composed of one or more computer files along with metadata. Archive files are used to collect multiple data files together into a single file for easier portability and storage, or simply to compress files to use less storage space. Archive files often store directory structures, error detection and correction information, arbitrary comments, and sometimes use built-in encryption.
**argument**: A value on which a function or statement operates; it can be a number or a variable. For example, in the BASIC statement VTAB 10, the number 10 is the argument.
**arithmetic expression**: A combination of numbers and arithmetic operators (such as 3 + 5) that indicates some operation to be carried out.
@ -194,6 +198,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**composite video**: A standard video signal that includes all color and timing information that is needed by a composite video monitor. Several video standards aie in use around the world: NTSC video is used in northern America and Japan; PAL video is used in much of Europe; SECAM is used in the USSR and many other countries. The Apple IIGS is capable of generating both NTSC and PAL video. Compare RGB.
**compression**: Compression is the process of encoding information using fewer bits than the original representation. Compression is useful because it reduces resources required to store and transmit data.
**computer**: An electronic device that performs predefined (programmed) computations at high speed and with great accuracy. A machine that is used to store, transfer, and transform information.
**computer language**: See programming language.
@ -296,6 +302,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**device handler**: See device driver
**DHCP**: The Dynamic Host Configuration Protocol (DHCP) is a network management protocol used on Internet Protocol networks whereby a DHCP server dynamically assigns an IP address and other network configuration parameters to each device on a network so they can communicate with other IP networks.
**dialog box**: A box on the screen that contains a message requesting more information from the user. See also alert.
**DIP switches**: A bank of tiny switches, each of which can be moved manually one way or the other to represent one of two values (usually on and off. See dual inline package.
@ -342,6 +350,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**DMA**: See direct memory access.
**DNS**: The Domain Name System (DNS) is a hierarchical and decentralized naming system for computers, services, or other resources connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities. Most prominently, it translates more readily memorized domain names to the numerical IP addresses needed for locating and identifying computer services and devices with the underlying network protocols.
**document**: A file created by an application.
**DOS**: Acronym for disk operating system. An Apple II disk operating system. See Disk Operating System.
@ -368,11 +378,13 @@ This document contains a glossary of terms used throughout the A2osX documentati
**embedded**: Contained within. For example, the string 'HUMPTY DUMPTY' is said to contain an embedded space.
**environment**: The complete set of machine registers associated with a running program. Saving the environment allows a program to be restored to its original operating mode with all of its registers intact as though nothing had happened. Saving and restoring an environment is most often associated with calling system functions or processing interrupts.
**Encryption**: Ehe process of converting information or data into a code, especially to prevent unauthorized access.
**environment**: The complete set of machine registers associated with a running program. Saving the environment allows a program to be restored to its original operating mode with all of its registers intact as though nothing had happened. Saving and restoring an environment is most often associated with calling system functions or processing interrupts. With respect to A2osX, the environment is an area in memory used by the shell to store various information, especially variables.
**EOF (end-of-file)**: The logical size of a ProDOS file; it is the number of bytes that may be read from or written to the file.
**erase**:
**erase**: See delete.
**error**: The state of a computer after it has detected a fault in one or more commands sent to it. Also called error condition.
@ -412,7 +424,7 @@ This document contains a glossary of terms used throughout the A2osX documentati
**FIFO**: Acronym for "first in, first out" order, as in a queue.
**file**: A named, ordered collection of information stored on a disk.
**file**: A named, ordered collection of information stored on a disk. A file is an object on a computer that stores data, information, settings, or commands used with a computer program.
**file control block (FCB)**: A data structure set up in memory by ProDOS to keep track of all open files.
@ -450,6 +462,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**function**: A preprogrammed calculation that can be carried out on request from any point in a program. A function takes in one or more arguments and returns a single value. It can therefore be embedded in an expression.
**GECOS**: The gecos field, or GECOS field is a field of each record in the /etc/passwd file on Unix, and similar operating systems. On UNIX, it is the 5th of 7 fields in a record. It is typically used to record general information about the account or its user(s) such as their real name and phone number.
**global page**: Under ProDOS, 256 bytes of data at a fixed location in memory, containing useful system information (such as a list of active devices) available to any application.
**global page bit map**: A portion of the ProDOS global page that keeps track of memory use in the computer. Applications under ProDOS are responsible for marking and clearing parts of the bit map that correspond to memory they have allocated or freed.
@ -470,9 +484,11 @@ This document contains a glossary of terms used throughout the A2osX documentati
**hardware**: Collectively, electronic circuit components and associated fittings and attachments. In computers, the computer itself (the processor), disk drives, and other peripheral equipment. The saying goes, "If you can touch it, it's hardware. If you can't, it's software." Compare firmware, software.
**Hash**: The result of an algorithm that generates a numeric, or fixed-size character output from a variable-sized piece of text or other data; used in cryptography and in error-checking
**hertz**: The unit of frequency of vibration or oscillation, defined as the number of cycles per second. Named for the physicist Heinrich Hertz and abbreviated Hz. The 6502 microprocessor used in the 8-bit Apple II systems operates at a clock frequency of about 1 million hertz, or 1 megahertz (MHz).
**hex**: See hexadecimal. (GSTR, PI)
**hex**: See hexadecimal.
**hexadecimal**: The base-16 system of numbers, using the ten digits 0 through 9 and the six letters A through F. Hexadecimal numbers can be converted easily and directly to binary form, because each hexadecimal digit corresponds to a sequence of 4 bits. In Apple manuals, hexadecimal numbers are usually preceded by a dollar sign ($).
@ -484,6 +500,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**high-level language**: A programming language that is relatively easy for people to understand. A single statement in a high-level language typically corresponds to several instructions of machine language. Compare low-level language.
**HTTPD**: A daemon process designed to serve HTTP requests and data.
**I/O**: Input/Output. A general term that encompasses input/output activity, the devices that accomplish it, and the data involved. See input/output.
**I/O device**: Input/output device. A device that transfers information into or out of a computer. See input, output, peripheral device.
@ -516,7 +534,7 @@ This document contains a glossary of terms used throughout the A2osX documentati
**information bar**: An optional component of the displaym if present, the information bar may contain any information the application wishes.
**initialization file**:
**initialization file**: A file read at computer, operating system or application startup that contains variables or preferences used to set or control initialization behavior such as specifying which hardware drivers to load or enable.
**initialize**: (1) To set to an initial state or value in preparation for some computation. (2) To prepare a blank disk to receive information by organizing its surface into tracks and sectors; see format.
@ -562,6 +580,10 @@ This document contains a glossary of terms used throughout the A2osX documentati
**inverse video**: The display of text on the computer's display screen in the form of dark dots on a light (or other single phosphor color) background, instead of the usual light dots on a dark background.
**IP**: Internet Protocol, part of TCP/IP. Used to define the transmission of data over network interfaces.
**IP Address**: a unique string of numbers separated by periods that identifies each computer using the Internet Protocol to communicate over a network.
**IRQ**: A 65C816 signal line that, when activated, causes an interrupt request to be generated.
**IWM**: "Integrated Woz Machine"; the custom chip that controls Apple's 3.5-inch disk drives.
@ -578,7 +600,7 @@ This document contains a glossary of terms used throughout the A2osX documentati
**K**: Abbreviation for the prefix kilo-, meaning 1024. A kilobyte (expressed as 1K) of memory is 1,024 memory locations. See kilobyte.
**kernel**: The central part of an operating system. ProDOS is the kernel of the Apple operating system.
**kernel**: The central part of an operating system. ProDOS is the kernel of the Apple operating system. The A2osX "Kernel" is the core process that manages all other processes and handles task switching between processes and overall memory management.
**key block**: The first block in any ProDOS file.
@ -598,6 +620,8 @@ This document contains a glossary of terms used throughout the A2osX documentati
**kilohertz**: A unit of measurement of frequency, equal to L000 hertz (abbreviated kHz). See also megahertz.
**LanCeGS**: An Ethernet card for the Apple II series of computers.
**landscape mode**: A printing mode in which text is printed top to bottom (that is, longways) on the paper.
**language**: See programming language.
@ -634,7 +658,7 @@ This document contains a glossary of terms used throughout the A2osX documentati
**location**: See memory location.
**lock**:
**lock**: (1) For files, a lock prevents a file from being overwritten or changed. (2) For processes, a lock can restrict write access to a portion of memory so only one process can make a change at a time. (3) In A2osX libraries, a lock counter is incremented for the library as each application registers its use of the library and decrements the count as they exit. When the count reaches zero, the library is automatically unloaded.
**logic**: (1) In microcomputers, a mathematical treatment of formal logic using a set of symbols to represent quantities and relationships that can be translated into switching circuits, or gates. AND, OR, and NOT are examples of logical gates. Each gate has two states, open or closed, allowing the application of binary numbers for solving problems. (2) The systematic scheme that defines the interactions of signals in the design of an automatic data processing system.
@ -757,10 +781,18 @@ memory.
**most significant bit**: The leftmost bit of a binary number. The most significant bit contributes the largest quantity to the value of the number. For example, in the binary number 10110 (decimal value 22), the leftmost bit has the decimal value 76 (24). Compare least significant bit.
**Multi-tasking**: A system that executes more than one program or task simultaneously.
**Multi-user**: A computer system able to be used by a number of people simultaneously.
**nanosecond**: One billionth of a second. Abbreviated ns.
**native mode**: The 16-bit configuration of the 65C816 microprocessor.
**negate**: Make a program condition or statement negative in meaning.
**Network Stack**: The protocol stack or network stack is an implementation of a computer networking protocol suite or protocol family. Strictly speaking, the suite is the definition of the communication protocols, and the stack is the software implementation of them. In A2osX, the device drivers, the network libraries and the NetworkD program manage the network stack that network aware applications utilize.
**newline (read) mode**: A file-reading mode in which each character read from the file is compared to a specified character (called the newline character); if there is a match, the read is terminated. Newline mode is typically used to read individual lines of text, with the newline character defined as a carriage return.
**nibble**: A unit of data equal to half a byte, or four bits. A nibble can hold any value from 0 to 15 ($0 and $F hexadecimal).
@ -773,6 +805,8 @@ memory.
**NOT**: A unary logical operator that produces a true result if its operand is false, and a false result if its operand is true. Compare AND, OR, exclusive OR.
**NSC, No Slot Clock**: The No-Slot Clock, also known as the Dallas Smartwatch (DS1216E), was a 28-pin chip-like device that could be used directly in any Apple II or Apple II compatible with a 28-pin ROM.
**NTSC**: (1) Abbreviation for National Television Standards Committee, which defined the standard format used for transmitting broadcast video signals in the United States. (2) The standard video format defined by the NTSC; also called composite because it combines all video information, including color, into a single signal.
**null**: Zero. A pointer is null if its value is all zeros. Compare NIL.
@ -871,6 +905,10 @@ memory.
**phase**: (1) A stage in a periodic process. A point in a cycle. For example, the 6502 and 65C816 microprocessors use a clock cycle consisting of two phases called F0 and F1. (2) The relationship between two periodic signals or processes.
**ping**: Ping is a computer network administration software utility used to test the reachability of a host on an Internet Protocol (IP) network.
**pipe**: In computer programming, especially in UNIX operating systems, a pipe is a technique for passing information from one program process to another. Basically, a pipe passes a parameter such as the output of one process to another process which accepts it as input.
**pixel**: A contraction of picture element, the smallest dot you can draw on the screen. Also a location in video memory that corresponds to a point on the graphics screen when the viewing window includes that location. In the Super Hi-Res display on the Apple IIGS, each pixel is represented by either 2 or 4 bits.
**pointer**: (1) An item of information consisting of the memory address of some other item. For example, the 65816 stack register contains a pointer to the top of the stack. (2) The mouse pointer, an arrow-shaped cursor whose screen location is controlled by mouse movements.
@ -890,10 +928,16 @@ Apple IIGS that divides and conditions the household current, supplying the volt
**precedence**: The order in which operators are applied in evaluating an expression. Precedence varies from language to language, but usually resembles the precedence rules of algebra.
**Preemptive**: Preemptive multitasking is task in which a computer operating system uses some criteria to decide how long to allocate to any one task before giving another task a turn to use the operating system. The act of taking control of the operating system from one task and giving it to another task is called preempting.
**prefix**: A pathname starting with a volume name and ending with a subdirectory name. It is the part of a full pathname that precedes a partial pathname-a prefix and a partial pathname together constitute a full pathname. A prefix always starts with a slash "/" because a volume directory name always starts with a slash.
**procedure**: In the Pascal and Logo programming languages, a sequence of instructions that work as a unit; approximately equivalent to the term function in C or subroutine in BASIC.
**Process**: In computing, a process is the instance of a computer program that is being executed by one or many threads. It contains the program code and its activity. Depending on the operating system (OS), a process may be made up of multiple threads of execution that execute instructions concurrently.
**process id**: The unique identifier A2osX uses to identify a running process.
**processor**: The hardware component of a computer that performs the actual computation by directly executing instructions represented in machine language and stored in main memory. See microprocessor.
**processor status register**: See status register.
@ -901,6 +945,18 @@ Apple IIGS that divides and conditions the household current, supplying the volt
**ProDOS**: A disk operating system for the Apple II family of computers. ProDOS stands for Professional Disk Operating System, and includes ProDOS 8 and ProDOS 16. Compare
Disk Operating System (DOS).
**ProDOS 1.0**: The first released version of ProDOS by Apple.
**ProDOS 2.0.3**: The last official ProDOS release by Apple.
**ProDOS 2.0.3tc**: A modified version of ProDOS 2.0.3 to correct the date table to support years through 2023. See the ProDOS.md doc for more information.
**ProDOS 2.4.2**: See https://prodos8.com/releases/prodos-242/
**ProDOS 2.5**: https://prodos8.com/releases/prodos-25/
**ProDOSfx**: A new version of ProDOS made by the A2osX to support enhancements such as lowercase in file names, volumes and directories. See the ProDOS.md doc for more information.
**ProDOS 16**: A disk operating system developed for 65816 native-mode operation on the Apple IIGS. It is functionally similar to ProDOS 8 but more powerful.
**ProDOS 8**: A disk operating system developed for standard Apple II computers. It runs on 6502-series microprocessors and on the Apple IIGS when the 65C816 processor is in
@ -943,6 +999,8 @@ routines used to support external I/O devices such as the Apple Memory Expansion
**RAM disk**: A feature of some operating systems which makes it possible to use programmable memory (RAM) as a disk volume. Large applications designed for machines with limited amounts of RAM must load program segments from disk as needed; on machines with RAM disk, the entire application is first loaded into RAM, where it runs as if still resident on disk, but much faster.
**RamWorks**: A memory board and access specification for extended memory on Apple II computer systems.
**random-access device**: See block device.
**random-access memory (RAM)**: Memory in which information can be referred to in an arbitrary or random order. As an analogy, a book is a random-access storage device in that it can be opened and read at any point. RAM usually means the part of memory available for programs from a disk; the programs and other data are lost when the computer is turned off. A computer with 512K RAM has 512 kilobytes available to the user. (Technically, the read-only memory (ROM) is also random access, and what's called RAM should correctly be termed read-write memory.) Compare read-only memory, read-write memory.
@ -961,7 +1019,9 @@ routines used to support external I/O devices such as the Apple Memory Expansion
**real-time clock (RTC)**: A custom IC that, once set, retains the current time of day, day, month, and year. Chapter 7 provides details of the RTC and other built-in I/O devices.
**record**:
**record**: A portion of data file for one entity. For example all the information about one person in a contact or address book data file.
**redirection**: Redirection describes the process of sending a data or other information to an alternate location. In A2osX, redirection allows sending data intended for one location such as standard output (the screen) to another (a file).
**reentrant**: Said of a routine that is able to accept a call while one or more previous calls to it are pending, without invalidating the previous calls. Under certain conditions, the Apple IIGS Scheduler manages execution of routines that are not reentrant.
@ -985,6 +1045,8 @@ routines used to support external I/O devices such as the Apple Memory Expansion
**return address**: The point in a program to which control returns on completion of a subroutine or function.
**return code**: An exit code, or sometimes known as a return code, is the code returned to a parent process by an executable.
**RF**: See radio frequency.
**RF modulator**: See radio-frequency modulator.
@ -1043,6 +1105,16 @@ needed.
**scroll**: To move all the text on the screen upward or downward, and, in some cases, sideways. See viewport, window.
**SCSI**: Small Computer System Interface is a set of standards for physically connecting and transferring data between computers and peripheral devices. The SCSI standards define commands, protocols, electrical, optical and logical interfaces.
**SCSI Cable**: A cable used to connect a SCSI device to a SCSI controller or interface card.
**SCSI Card**: A card for the computer that implements the SCSI standard.
**SCSI Drive**: A block devices that utilizes the SCSI standard.
**SCSI Interface**: See SCSI Card.
**SECAM**: A French acronym meaning "sequential color with memory." A video standard originating in France and used in the USSR and other countries.
**sector**: A division of a tack on a disk. When a disk is formatted, its surface is divided into tracks and sectors.
@ -1127,6 +1199,12 @@ needed.
**status registers**: A location in the ACIA (at $C099 for port 1 and $COe9 for port 2) that stores the state of two RS-232-C signals and the state of the transmit and receive data registers, as well as the outcome of the most recent character transfer. A register in the 65816 microprocessor that contains flags reflecting the various aspects of machine state and operation results.
**StdErr**: Standard error is another output stream typically used by programs to output error messages or diagnostics. It is a stream independent of standard output and can be redirected separately.
**StdIn**: Standard input is a stream from which a program reads its input data. The program requests data transfers by use of the read operation. Not all programs require stream input. Unless redirected, standard input is inherited from the parent process. In the case of an interactive shell, that is usually associated with the keyboard.
**StdOut**: Standard output is a stream to which a program writes its output data. The program requests data transfer with the write operation. Not all programs generate output. Unless redirected, standard output is inherited from the parent process. In the case of an interactive shell, that is usually the text terminal which initiated the program.
**step value**: The amount by which the index variable changes on each pass through a loop.
**stop bit**: A bit indicating the end of a character in a string of serially transmitted characters. A MARK signal following a data string (or the optional parity bit), indicating the end of a character.
@ -1175,12 +1253,26 @@ needed.
**TAB**: An ASCII character that commands a device such as a printer to start printing at a preset location (called a tab stop). There are two such characters: horizontal tab (hex 09) and vertical tab (hex 0B). TAB works like the tabs on a typewriter.
**TCP**: The Transmission Control Protocol (TCP) is one of the main protocols of the Internet protocol suite. It originated in the initial network implementation in which it complemented the Internet Protocol (IP). Therefore, the entire suite is commonly referred to as TCP/IP. TCP provides reliable, ordered, and error-checked delivery of a stream of octets (bytes) between applications running on hosts communicating via an IP network. Major internet applications such as the World Wide Web, email, remote administration, and file transfer rely on TCP, which is part of the Transport Layer of the TCP/IP suite. SSL/TLS often runs on top of TCP.
**television set**: A display device capable of receiving broadcast video signals (such as commercial television broadcasts) by means of an antenna. Can be used in combination with a radio-frequency modulator as a display device for the Apple II family of computers. Compare video monitor.
**Telnet**: Telnet is an application protocol used on the Internet or local area network to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. User data is interspersed in-band with Telnet control information in an 8-bit byte oriented data connection over the Transmission Control Protocol (TCP).
**Telnet Server**: See TelnetD.
**TelnetD**: The telnetd program is a server which supports the DARPA telnet interactive communication protocol.
**terminal**: A computer terminal is an electronic or electromechanical hardware device that is used for entering data into, and displaying or printing data from, a computer or a computing system.
**terminal emulator**: A terminal emulator, terminal application, or term, is a computer program that emulates a video terminal within some other display architecture. A terminal window allows the user access to a text terminal and all its applications such as command-line interfaces (CLI) and text user interface (TUI) applications.
**terminal mode**: The mode of operation in which the Apple acts like an intelligent terminal.
**text**: (1) Information presented in the form of readable characters. (2) The display of characters on a display screen. Compare graphics.
**text editor**: A text editor is a type of computer program that edits plain text. Text editors are provided with operating systems and software development packages, and can be used to change files such as configuration files, documentation files and programming language source code.
**text file**: A file consisting of the ASCII representation of characters.
**text file format (TFF)**: A file that consists of ASCII representations of characters. Compare object module format.
@ -1211,22 +1303,30 @@ needed.
**type-ahead buffer**: A buffer that accepts and holds characters that" are typed faster than the computer can process them.
**UDP**: UDP (User Datagram Protocol) is an alternative communications protocol to Transmission Control Protocol (TCP) used primarily for establishing low-latency and loss-tolerating connections between applications on the internet.
**unary operator**: An operator that applies to a single operand. For example, the minus sign (-) in a negative number such as 4 ts a unary arithmetic operator. Compare binary operator.
**unbuffered**: A style of input and output that does not use a buffer for I/O; reading and writing is done one character at a time.
**unclaimed interrupt**: This occurs when the hardware Interrupt Request Line is active, indicating that an interrupt-producing device needs attention, but none of the installed interrupt handlers claims responsibility for the interrupt.
**unload**:
**unload**: To remove from memory, such as to unload a program or library from memory.
**update**:
**update**: An update is new, improved, or fixed software, which replaces older versions of the same software. For example, updating your operating system or A2osX brings it up-to-date with the latest drivers, system utilities, and program libraries.
**user**: A person operating or controlling a computer system.
**User ID**: An identification number that specifies the owner of
**User ID**: An identification number that specifies the owner of a resource of the record of that user in the system user database.
**user interface**: The rules and conventions by which a computer system communicates with the person operating it.
**User Name**: The full name of a user.
**Uthernet**: An Ethernet card for the Apple II series of computers.
**Uthernet II**: An Ethernet card for the Apple II series of computers.
**utilities**: Programs that let you rename, copy, format, delete, and otherwise manipulate files and volumes.
**value**: An item of information passed from a calling routine to a function. Compare result. An item of information that can be stored in a variable, such as a number or a string.
@ -1247,8 +1347,18 @@ needed.
**volume name**: The name by which a particular volume is identified. It is the same as the filename of the volume directory file.
**VSDrive**: A virtual drive over Super Serial Card emulator supported by ADTPro software.
**VT-100**: The VT-100 is a video terminal, introduced in August 1978 by Digital Equipment Corporation (DEC). It was one of the first terminals to support ANSI escape codes for cursor control and other tasks, and added a number of extended codes for special features like controlling the status lights on the keyboard.
**VT100 Escape Code**: The set of special control codes used by the VT-100 to control the behavior of the display.
**warm start**: The process of transferring control back to the operating system in response to a failure in an application program. Compare cold start.
**Web Server**: A web server is server software, or hardware dedicated to running said software, that can satisfy World Wide Web client requests. A web server can, in general, contain one or more websites. A web server processes incoming network requests over HTTP and several other related protocols.
**WiModem**: WiModem is an internet modem for your 8 bit computer that emulates a standard Hayes compatible modem.
**wraparound**: The automatic continuation of text from the end of one line to the beginning of the next; wraparound means that you don't have to press the Return key at the end of each line as you type.
**write**: To transfer information from the computer to a destination external to the computer (such as a disk drive, printer, or modem) or from the computer's processor to a destination external to the processor (such as main memory).
@ -1267,134 +1377,6 @@ needed.
**Y register**: One of the two index registers in the 6502 OR 65C816 microprocessor.
**ADTPro**: Apple Disk Transfer ProDOS (ADTPro) transfers physical disks and disk images between Apple II-era computers and the modern world. It can even get your Apple running if you don't have any disks at all. The host (server) component runs on today's computers with Java, and the 8-bit Apple (client) component runs on any Apple II or Apple /// compatible computer with 64k of memory or more.
**archive file**: An archive file is a file that is composed of one or more computer files along with metadata. Archive files are used to collect multiple data files together into a single file for easier portability and storage, or simply to compress files to use less storage space. Archive files often store directory structures, error detection and correction information, arbitrary comments, and sometimes use built-in encryption.
**compression**: Compression is the process of encoding information using fewer bits than the original representation. Compression is useful because it reduces resources required to store and transmit data.
**device driver**: A device driver is a computer program that operates or controls a particular type of device that is attached to a computer. A driver provides a software interface to hardware devices, enabling operating systems and other computer programs to access hardware functions without needing to know precise details about the hardware being used.
**DHCP**: The Dynamic Host Configuration Protocol (DHCP) is a network management protocol used on Internet Protocol networks whereby a DHCP server dynamically assigns an IP address and other network configuration parameters to each device on a network so they can communicate with other IP networks.
**DNS**: The Domain Name System (DNS) is a hierarchical and decentralized naming system for computers, services, or other resources connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities. Most prominently, it translates more readily memorized domain names to the numerical IP addresses needed for locating and identifying computer services and devices with the underlying network protocols.
**driver**: See device driver.
**editor**: See text editor.
**Encryption**:
**environment**:
**File**:
**function**:
**GECOS**:
**Hash**:
**HTTPD**:
**IP**:
**IP Address**:
**LanCeGS**:
**loop**:
**Multi-tasking**:
**Multi-user**:
**negate**:
**Network Stack**:
**NSC, No Slot Clock**:
**ping**:
**pipe**:
**Preemptive**:
**Process**:
**process id**:
**RamWorks**:
**redirection**:
**return code**:
**SCSI**:
**SCSI Cable**:
**SCSI Card**:
**SCSI Drive**:
**SCSI Interface**:
**StdErr**:
**StdIn**:
**StdOut**:
**TCP**:
**Telnet**:
**Telnet Server**:
**TelnetD**:
**terminal**:
**terminal emulator**:
**text editor**: A text editor is a type of computer program that edits plain text. Text editors are provided with operating systems and software development packages, and can be used to change files such as configuration files, documentation files and programming language source code.
**UDP**:
**User**:
**User ID**:
**User Name**:
**Uthernet**:
**Uthernet II**:
**VSDrive**:
**VT100**:
**VT100 Escape Code**:
**Web Server**:
**WiModem**:
**ProDOS 1.0**:
**ProDOS 2.0.3**:
**ProDOS 2.0.3tc**:
**ProDOS 2.4.2**:
**ProDOS 2.5**:
**ProDOSfx**:
## License
A2osX is licensed under the GNU General Public License.

View File

@ -1,6 +1,6 @@
# A2osX Media Guide
### Updated January 27, 2020
### Updated February 10, 2020
We have changed the media set for A2osX. New A2osX Users should download the most current version as shown in the table below. **A new Release Candidate (RC) edition has been made available (highlighted below), you should choose one of the media options from this set.** The Bleed media are the primary images used by the developers to hold the most current version of the A2osX binaries (and a copy of the source, although of course GitHub is the primary source repository) and may be unstable. You should not use this media unless directed by the A2osX development team.
@ -9,8 +9,8 @@ We have changed the media set for A2osX. New A2osX Users should download the mo
| Edition | Description | Build No | Date |
| --- | --- | --- | --- |
| RELEASE | This is a locked down set of media that will change infrequently, only upon a major update. | | * |
| **RC** | This is a RELEASE candidate, if available, for the next coming major release. There should be very few RC releases before one of them becomes the actual RELEASE media. RC releases should be relatively bug free and feature complete (to the scope planned for that release). | **1664** | Oct-22-2019 |
| **STABLE** | **Stable releases are significant updates over the last RELEASE but may not included in their own scope. STABLE releases will be made from BLEED builds that have no significant bugs, but may have documented issues that have not yet been resolved, especially in new features. This will likely become RC shortly.** | **1784** | **Dec-05-2019** |
| **RC** | **This is a RELEASE candidate, if available, for the next coming major release. There should be very few RC releases before one of them becomes the actual RELEASE media. RC releases should be relatively bug free and feature complete (to the scope planned for that release).** | **1931** | **Feb-10-2020** |
| STABLE | Stable releases are significant updates over the last RELEASE but may not included in their own scope. STABLE releases will be made from BLEED builds that have no significant bugs, but may have documented issues that have not yet been resolved, especially in new features. This will likely become RC shortly. | 1919 | Feb-07-2020 |
| BLEED| The media in this edition are very cutting edge, changing almost daily, particularly A2OSX.BUILD.po. This edition is targeted at core developers who are creating and maintaining A2osX. For most users, it is recommended that you use one of the other editions. | | * |
* Note this is a new system of Editions and Disk Images. A2osX 0.93 will be the first Release that uses this new system. The first **RC** set of media are now available and are based on build No 1600. If no significant issues are found with **RC**, a set of **RELEASE** media will be made available based on this build (the RC media will then be removed until a 0.94 RC is ready).
@ -24,8 +24,8 @@ You can use and/or install A2osX from the media found in our Media directory fou
| **[RC.140.po](../.Floppies/RC.140.po)** | **RC** |**An 140K 5.25" disk image containing the main BOOT and support files for running A2osX.** |
| **[RC.800.po](../.Floppies/RC.800.po)** | **RC** |**An 800K 3.5" disk image containing A2osX system, utilities and application files for running A2osX.** |
| **[RC.32MB.po](../.Floppies/RC.32MB.po)** | **RC** |**A 32MB HD disk image containing A2osX system, utilities and applications; suitable for use with emulators such as AppleWin or for use with the CFFA card.** |
| **[TDBOOT.po](../.Floppies/TDBOOT.po)** | **STABLE** |**A special 32MB HD disk image, preconfigured to automatically load Uthernet2 driver, start network services and launch the TelnetD server process for use with the CFFA or similar card.** |
| **[DEBUG.po](../.Floppies/DEBUG.po)** | **STABLE** |**An 140K 5.25 disk image containing the main BOOT and support files for A2osX and preconfigured with the least options enabled. This is intended to be used as a minimal boot to help identify hardware conflicts.** |
| **[TDBOOT.po](../.Floppies/TDBOOT.po)** | **RC** |**A special 32MB HD disk image, preconfigured to automatically load Uthernet2 driver, start network services and launch the TelnetD server process for use with the CFFA or similar card.** |
| **[DEBUG.po](../.Floppies/DEBUG.po)** | **RC** |**An 140K 5.25 disk image containing the main BOOT and support files for A2osX and preconfigured with the least options enabled. This is intended to be used as a minimal boot to help identify hardware conflicts.** |
| [STABLE.140.po](../.Floppies/STABLE.140.po) | STABLE |An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| [STABLE.800.po](../.Floppies/STABLE.800.po) | STABLE | An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| [STABLE.32MB.po](../.Floppies/STABLE.32MB.po) | STABLE | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |

View File

@ -1,8 +1,26 @@
# A2osX (0.92) Multi-Tasking OS for Apple II
# A2osX (0.93) Multi-Tasking OS for Apple II
### Updated January 27, 2020
### Updated February 10, 2020
## Latest News 2019-12-05
## Latest News 2020-01-27
Major update to A2osX 0.93
The A2osX team is proud to announce the availability of two new versions of ProDOS, one with a very minor tweak and the other a major update/overhaul. There is ProDOS 2.03tc which is an 8 byte patch to ProDOS 2.03 to update the year table to support years through 2023 and ProDOS FX, a **F**aster and e**X**tended version, that adds many new features including lower case file, directory and volume name support. These new versions are already being included in the latest **Stable** media and will become the versions of ProDOS supplied on all future media. The team added a new Document to our repository that covers these and other publically available versions of ProDOS and their use with A2osX.
A2osX now act actually has for quite some time supports lower case in file, directory and volume names as long as this capability is available in the version of ProDOS you are running. Consult the new **[A2osX and ProDOS](.Docs/ProDOS.md)** document for more information and a table on which versions of ProDOS provide this capability to A2osX.
The *EDIT* utility has undergone a major update. We need your testing and feedback. Please make sure to open issues on any anomalies you discover.
Kernel/Shell rewrite to move more things to AUX freeing main mem. with 2 tty used to be 22K free. Now. 26.5K with 1TTY 28.4K. of course with 8 TTY 17.5K
Speaking of changing the number of virtual TTYs, A2osX has been enhanced to now support up to 8 virtual terminals on the console, configurable with the KCONFIG utility. Consult the User Guide for more information. Note that with 8 virutal TTYs defines, available main memory drops to 17.5K. Open Apple 1 through 8 is used to be switched between the virtual terminals, Open Apple-0 is still used to access the A2osX Console (displays system errors and information) and Open Apple-9 is reserved for future use of DHGR (Double High-res Graphics).
A new bell option (**Echo \a**) has been added to the *echo* command in the shell (*/bin/sh*) to ring a bell on VT-100 connected terminals (via the SSC driver or the TELNETD deamon). The bell has no affect on the console.
Multiple bugs have been address from issues posted on GitHub including updates to *cut*, *format*, *sh* (for internal command), *nscutil*, *ping*, *wc*, and many more. Users can check the status of issues or create new ones for A2osX on **[Github](https://github.com/burniouf/A2osX/issues)**.
A great new networking utility, *httpget* is now available which can be used to access/post to web servers. This utility can be used in combination with services like IFTTT to send tweets from A2osX, or send message to apps like Slack.## Latest News 2019-12-05
Media have been updated based on Build 1784.

View File

@ -1,6 +1,6 @@
# A2osX and ProDOS
### Updated January 27, 2020
### Updated February 9, 2020
As discussed in the **[Users Guide](.Docs/User%20Guide.md)**, A2osX runs on top of ProDOS, leveraging its support for block devices such as floppy drives, hard drives, SmartPort drives, etc.; it is limited in its ability to implement certain features based on the capabilities of the underlying operating system, in this case ProDOS. This document will provide an overview of those features and their availability or absence from several versions of ProDOS including two new versions of ProDOS created by the makers of A2osX.

View File

@ -1,6 +1,6 @@
# A2osX (0.93) Multi-Tasking OS for Apple II
### Updated January 27, 2020
### Updated February 9, 2020
## Screenshots

View File

@ -1,6 +1,6 @@
# A2osX Shell Developers Guide
### Updated January 27, 2020
### Updated February 9, 2020
One of the most significant parts of A2osX is its shell which can perform both interactive and scripted tasks. Using the interactive part of the shell, you can perform many common and complex tasks using both built-in (native or internal to shell) and external (BIN or executable) commands. Internal commands include CD (change directory), MD (make directory), PWD, DATE, etc. External commands include CP (copy), RM (remove), CAT (display file contents), TELNET, etc. It is even possible to create and execute short scripts right on the interactive command line (these are run once and not saved like true scripts) such as:

View File

@ -1,8 +1,8 @@
# A2osX Terminal Codes Guide
### Updated January 27, 2020
### Updated February 10, 2020
A2osX terminal capabilities are based off of the standard VT100 Terminal. This applies to users connected via Super Serial Cards, Telnet (via TelnetD server daemon) and Apple console (physical keyboard/screen). All programs can use this facility to create rich interactive text mode applications. This includes both programs written in Assembly or Scripts written for the Shell (SH). The table below lists the codes you can use in your applications and their function. Consult the A2osX Shell Developers Guide for information on using these codes in scripts. Note, the Apple Console implementation only supports a subset of the VT100 codes, these are noted in the last column as OK.
A2osX terminal capabilities are based off of the standard VT-100 Terminal. This applies to users connected via Super Serial Cards, Telnet (via TelnetD server daemon) and the Apple console (physical keyboard/screen). All programs can use this facility to create rich interactive text mode applications. This includes both programs written in Assembly or Scripts written for the Shell (SH). The table below lists the codes you can use in your applications and their function. Consult the A2osX Shell Developers Guide for information on using these codes in scripts. Note, the Apple Console implementation only supports a subset of the VT-100 codes, these are noted in the last column as OK.
| Esc Sequence | Description | DEC Code | A2osX TERM |
|--------------|-------------|----------|------------|

View File

@ -1,6 +1,6 @@
# A2osX (0.93) Multi-Tasking OS for Apple II
### Updated January 27, 2020
### Updated February 10, 2020
This is the functional specification for A2osX and its system modules, internal and external commands and shell language. Please refer to the other A2osX documentation such as the User Guide, Notes for Developers and Shell Programming Guide for more information on the use of these commands and modules.
@ -18,7 +18,7 @@ This is the functional specification for A2osX and its system modules, internal
| Name | Status | Comment | K.Ver |
| ---- | ------ | ------- | ------|
| GETTY | Working | -E : Exit on remote close | 0.93 |
| HTTPD | Future | Web Page Server Daemon | 0.94 |
| HTTPD | Partial | Web Page Server Daemon | 0.94 |
| INITD | Future | Run Level Manger | 0.94 |
| INSDRV | Working | Loads HW Drivers | 0.93 |
| KCONFIG | Working | Kernel Configuration Utility | 0.93 |
@ -78,10 +78,10 @@ This is the functional specification for A2osX and its system modules, internal
| RPCDUMP | In Progress | Tool based on UDP socket API, renamed from RPCINFO <br> RPCDUMP <ip\|host> | 0.93 |
| SH | Working | Shell Command Processor<br>(See Internal Shell commands) | 0.93 |
| TELNET | Working | TELNET <ip\|host> [port] | 0.93 |
| TERM | Testing | TERM \<device\> | 0.93 |
| TERM | Working | TERM \<device\> | 0.93 |
| UNPAK | Working | UNPAK archive | 0.93 |
| USERADD | Testing | USERADD username <br> -c Comment : GECOS comment<br> -d HD : Home Directory <br> -p PW : Password <br> -s SH : Shell | 0.93 |
| USERDEL | Testing | USERDEL username <br> -r : Force removes files in home directory | 0.93 |
| USERADD | Working | USERADD username <br> -c Comment : GECOS comment<br> -d HD : Home Directory <br> -p PW : Password <br> -s SH : Shell | 0.93 |
| USERDEL | Working | USERDEL username <br> -r : Force removes files in home directory | 0.93 |
| WC | Working | WC File(s) (*,? wildcards allowed) <br> -C: Continue on error<br> -R: Recurse Subdirectories<br> -M: Print CHAR counts<br> -L: Print LINE counts<br> -W: Print WORD counts | 0.93 |
| WHO | Working | List Users Online | 0.93 |

View File

@ -1,6 +1,6 @@
# A2osX User Guide
### Updated January 27, 2020
### Updated February 9, 2020
This Guide provides information on getting started with A2osX. This Guide helps you understand the basic features, capabilities and operation of A2osX. This should be the first document you read before, or soon after, installing or running A2osX.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.