Updated Readme, new Media Guide, new Screenshot with logo placed on readme. Updated some tests and current MAKE.

This commit is contained in:
Patrick Kloepfer 2019-04-10 22:48:43 -04:00
parent 295dcbce1a
commit dab037cffe
10 changed files with 180 additions and 56 deletions

Binary file not shown.

41
.Docs/Media Guide.md Normal file
View File

@ -0,0 +1,41 @@
# A2osX Media Guide
## Editions
| Edition | Description | Build No | Date |
| --- | --- | --- | --- |
| RELEASE | This is a locked down set of media that will change infrequently, only open 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). | | * |
| 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. | | * |
| 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. | 1372 | Apr-10 2019|
* Note we are moving to a new system of Editions and Disk Images. A2osX 0.93 will be the first Release that uses this new system. The first **STABLE** set of media is expected soon. As we get closer to full 0.93 release the other editions will progressively become available.
## Disk images :
You can use and/or install A2osX from the media found in our Media directory found **[here](.Floppies)**. The current set of available media includes:
| Image Name | Edition | Description !
| --- | --- | --- |
| **A2OSX.BUILD.po** | Bleed | 32MB disk image with S-C MASM 3.0, all binaries and all source for A2osX <br> This is primary development media for A2osX, especially pre-launch of Release, Stable and official Build Media. See below.|
| A2OSX.MAKE.po | Bleed | 32MB disk image with S-C MASM 3.0, all binaries and all source for multiple BUILD versions of A2osX stored in directories on MAKE. The image also includes the TEST, ADMIN, and EXAMPLE scripts being created to support A2osX. |
| A2OSX.B800.po | Bleed | An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| A2OSX.BOOT.po | Bleed | An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| BLANK32MB.po | Support | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |
| BLANK800.po | Support | A formatted empty ProDOS 3.5" 800K disk image, suitable for use with emulators such as AppleWin |
| BLANK140.dsk | Support | A formatted empty ProDOS 5.25" 140K disk image, suitable for use with emulators such as AppleWin |
| BLEED.140.dsk | BLEED |An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| BLEED.800.po | BLEED |An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| BLEED.32MB.po | BLEED | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |
| RC.140.dsk | RC |An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| RC.800.po | RC |An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| RC.32MB.po | RC | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |
| RELEASE.140.dsk | RELEASE |An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| RELEASE.800.po | RELEASE |An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| RELEASE.32MB.po | RELEASE | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |
| STABLE.140.dsk | STABLE |An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| STABLE.800.po | STABLE | An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| STABLE.32MB.po | STABLE | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |
Please note, we plan to change the media set once 0.93 is officially released. Currently, the BUILD media is the primary image 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). You can download the BUILD image and run in your favorite Apple II emulator or copy to CFFA, MicroTurbo or other Hard Disk emulator to boot, run, test and develop programs for A2osX. Once 0.93 is released, we plan to update the media to include RELEASE, STABLE and BUILD editions of the media, like other projects you might find on GitHub; and each of these will include BOOT, INSTALL, SOURCE and EXTRA type media so that users and developers can BOOT or INSTALL A2osX to existing systems as they see fit.

View File

@ -278,6 +278,11 @@ A2osX is made available under the GNU License 2.0. Our Full License can he foun
##Error Messages
The Error section is out of date. Refresh from INC/A2osX.I
Error nums have been realigned and move around.
Shell Errors
| Hex | Error Code | Error Message |

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
A2osx Logo Screen.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 840 KiB

View File

@ -23,9 +23,11 @@ AUTO 4,1
ECHO "\f A2osX Make Discs Utility"
ECHO
READ -P "Which Build Number is the Source: " Build
READ -P "Which Build Number is the Source: " BUILD
SET SOURCE = "/MAKE/BUILDS/BUILD${BUILD}"
IF [ -Z $BUILD ]
ECHO
ECHO "\nSOURCE IS :${SOURCE}"
IF [ -Z $SOURCE ]
ECHO "You pressed return with no choice, bad idea"
EXIT
FI
@ -34,8 +36,9 @@ ELSE
ECHO "Invalid Build - Exiting"
EXIT
FI
ECHO "\nTypes: RELEASE, RC, STABLE, and BLEED"
ECHO "\nTypes: RELEASE, RC, STABLE, and BLEED\n"
READ -P "Which Type to you want to make: " TYPE
ECHO
IF [ -Z $TYPE ]
ECHO "You pressed return with no choice, bad idea"
EXIT
@ -65,14 +68,13 @@ SWITCH $TYPE
ECHO "You entered an invalid choice"
EXIT
END
ECHO "\nMedia: 140K, 800K and 32MB (1, 8 or 32)"
ECHO "\nMedia: 140K, 800K and 32MB (1, 8 or 32)\n"
READ -P "Which Media to you want to make: " MEDIA
ECHO
IF [ -Z $MEDIA ]
ECHO "You pressed return with no choice, bad idea"
EXIT
FI
SWITCH $MEDIA
CASE "1"
CASE "140"
@ -96,9 +98,9 @@ SWITCH $MEDIA
ECHO "You entered an invalid choice"
EXIT
END
ECHO "\nProDOS version: 2.03 or 2.42 (3 or 42)"
ECHO "\nProDOS version: 2.03 or 2.42 (3 or 42)\n"
READ -P "Which ProDOS version to want installed: " PRODOS
ECHO
IF [ -Z $PRODOS ]
ECHO "You pressed return with no choice, bad idea"
EXIT
@ -117,9 +119,9 @@ SWITCH $PRODOS
ECHO "You entered an invalid choice"
EXIT
END
ECHO "\nPlease make sure that the ${TYPE} ${MEDIA} is online"
ECHO "\nPlease make sure that the ${TYPE} ${MEDIA} is online\n"
READ -P "Ready to make your disk (Y/N): " GO
ECHO
IF [ -Z $GO ]
ECHO "You pressed return with no choice, bad idea"
EXIT
@ -132,37 +134,34 @@ ELSE
ECHO "\nOK, Well you have a nice day. Bye!"
EXIT
FI
SET DEST = "/${TYPE}${MEDIA}/"
# Verify that DESTINATION is ONLINE
IF [ -D $DEST ]
ECHO "\n\nValid Destination Volume found"
ECHO "\nValid Destination Volume found"
ELSE
ECHO "\n\nCould not find Valid Destination Volume - Exiting"
ECHO "\nCould not find Valid Destination Volume - Exiting"
EXIT
FI
# At least check that a2osx.system is on disk.
IF [ -F ${SOURCE}/A2OSX.SYSTEM ]
ELSE
ECHO "\n\nSource Directory missing SYSTEM files - Exiting"
ECHO "\nSource Directory missing SYSTEM files - Exiting"
EXIT
FI
#
# List check that there is 1 and only 1 DEST volume on line
# Lets check that there is 1 and only 1 DEST volume on line
# and get its DEV id so we can format it.
#
# Verify that ProDOS is on DEST DISK
IF [ -F ${DEST}/PRODOS ]
ELSE
ECHO "\n\nDestination Volume missing ProDOS - Exiting"
ECHO "\nDestination Volume missing ProDOS - Exiting"
EXIT
FI
CP ${SOURCE} ${DEST}
#CP ${SOURCE} ${DEST}
MAN
TEXT /MAKE/USR/SHARE/MAKE/MAKEDISKS

View File

@ -1,19 +1,21 @@
# A2osX (0.93) Multi-Tasking OS for Apple II
![](./.screen-shots/ScreenShot.LS.png)
![](./.screen-shots/ScreenShot.Logo.png)
If you would like to see more screenshots of A2osX click **[here](.Docs/Screen%20Shots.md)**.
If you would like to see more screen shots of A2osX click **[here](.Docs/Screen%20Shots.md)**.
## Introduction...
A2osX is an operating, programming and execution environment for the 128K Enhanced Apple //e and Apple //gs series of computers. While layered atop of ProDOS, taking advantage of all ProDOS block devices and MLI calls; A2osX is much more than an application or command shell. Written in 65C02 assembly for speed of execution and efficient memory management; A2osX is a multitasking and yes multiuser development environment bringing many of today's server operating system features to our venerable vintage 8-bit systems.
A2osX is an operating, programming and execution environment for the 128K Enhanced Apple //e and Apple //gs series of computers. While layered atop of ProDOS, taking advantage of all ProDOS block devices and MLI calls; A2osX is much more than an application or command shell. Written in 65C02 assembly for speed of execution and efficient memory management; A2osX is a multitasking and yes multi-user development environment bringing many of today's server operating system features to our venerable vintage 8-bit systems.
The foundation of A2osX enabling its multiuser multitasking capabilities is a reusable set of APIs and LIBs (written in Assembly) that all programs can and do use which make them very lean and fast. For instance, there is one network API that any program can call which in turn handles the I/O to different brand LAN cards via a set of drivers. Key here is that multiple programs can be using the network at the same time such as the TELNETD server and the TELNET client. One of the key benefits is code for doing each program is smaller because the network API is doing a great deal of the work. With CORE APIs like printf and LIBs such as Network only loaded once (much like a DLL in Windows) memory is conserved, providing more resources to support your A2osX programs.
The foundation of A2osX enabling its multi-user multitasking capabilities is a reusable set of APIs and LIBs (written in Assembly) that all programs can and do use which make them very lean and fast. For instance, there is one network API that any program can call which in turn handles the I/O to different brands of LAN cards via a set of drivers. In addition, multiple programs can be using the network at the same time such as the TELNETD server and the TELNET client. A key benefit is that code for each program is smaller because the network API is doing a great deal of the work. With CORE APIs like printf and LIBs such as Network loaded only once (much like a DLL in Windows) memory is conserved, providing more resources to support your A2osX programs.
A2osX is designed to work on any "stock" 128k Apple //e, with no additional hardware with a 65C02 or newer processor.
## Requires :
A2osX is designed to work on any 128k Enhanced Apple //e or newer computer. Specifically, A2osX relies on the enhanced instruction set found in the 65C02 processor (this includes the 65C816 found in the //GS). A2osX will not run on an Apple ][ or ][+, an unenhanced //e or on systems without at least 128K of memory. A2osX does not require any special hardware cards, but does support and its operation can be enhanced with the presence of a mass storage devices (any ProDOS block device), a network card, Super Serial Card and/or a Time Card.
Consult the **[documentation](#documentation)** section below to find other resources available to you for learning how to install, use, develop and test A2osX. The Hardware section of the User Guide contains more information on supported hardware.
See the **[documentation](#documentation)** section below to find other resources available to you for learning how to install, use, develop and test A2osX.
## Latest News 2019-02-19
Major updates have occurred to the kernel and many of the A2osX API's to support a greatly enhanced shell that boasts significant new scripting capabilities since 0.92. Also added is the the ability to redirect input and output, including errors, and the ability to pipe (|) the output of one command or operation to another (i.e. **ls \* | more** ). A2osX now provides for multiple virtual terminals as well as users/terminals via TCP (through TELNETD) and serial devices (through a SSC driver).
@ -28,23 +30,7 @@ This is just a place holder and plug for our A2osx internet site. Stay tuned he
## Disk images :
You can use and/or install A2osX from the media found in our Media directory found **[here](.Floppies)**. The current set of available media includes:
| Image Name | Description !
| --- | --- |
| **A2OSX.BUILD.po** | 32MB disk image with S-C MASM 3.0, all binaries and all source for A2osX <br> This is primary development media for A2osX, especially pre-launch of Release, Stable and official Build Media. See below.|
| A2OSX.MAKE.po | 32MB disk image with S-C MASM 3.0, all binaries and all source for multiple BUILD versions of A2osX stored in directories on MAKE. The image also includes the TEST, ADMIN, and EXAMPLE scripts being created to support A2osX. |
| A2OSX.B800.po | An 800K 3.5" disk image containing the main BOOT and support files for running A2osX. |
| A2OSX.BOOT.po | An 140K 5.25" disk image containing the main BOOT and support files for running A2osX. |
| A2OSX.DEV.po | A 140K ProDOS disk image containing source code for A2osX. Use is being discontinued. |
| BLANK32MB.po | A formatted empty ProDOS 32MB HD disk image, suitable for use with emulators such as AppleWin |
| BLANK800.po | A formatted empty ProDOS 3.5" 800K disk image, suitable for use with emulators such as AppleWin |
| BLANK140.dsk | A formatted empty ProDOS 5.25" 140K disk image, suitable for use with emulators such as AppleWin |
Please note, we plan to change the media set once 0.93 is officially released. Currently, the BUILD media is the primary image 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). You can download the BUILD image and run in your favorite Apple II emulator or copy to CFFA, MicroTurbo or other Hard Disk emulator to boot, run, test and develop programs for A2osX. Once 0.93 is released, we plan to update the media to include RELEASE, STABLE and BUILD editions of the media, like other projects you might find on GitHub; and each of these will include BOOT, INSTALL, SOURCE and EXTRA type media so that users and developers can BOOT or INSTALL A2osX to existing systems as they see fit.
## Requires :
Enhanced IIe (65c02 cpu) with 128k, //c, IIgs
You can use and/or install A2osX from the media in our Media directory found **[here](.Floppies)**. Provided media includes **Release**, **RC** (Release Candidate), **Stable** and **Bleed** (Cutting Edge) editions in 140K, 800K and 32MB images. Please consult our **[Media Guide](.Docs/Media%20Guide.MD)** for more information.
## Documentation

View File

@ -14,7 +14,7 @@ echo "shell script header #!:/bin/sh"
echo
BADSCRIPT 2> /DEV/NULL
SET R = $?
IF [ $R -EQ 246 ]
IF [ $R -EQ 118 ]
IF [ -N $Log ]
SET P = $P + 1
echo "BADSHTEST Passed" >> ${Log}

View File

@ -197,17 +197,110 @@ ELSE
SET P = $P + 1
FI
FI
# 13th Test Tru OR Fal OR Fal
SET T = $T + 1
IF [ 99 -EQ 99 ] OR [ 99 -EQ 79 ] OR [ "A" = "b" ]
Echo " Test 13 Tr OR Fa OR Fa : True : PASSED"
IF [ -N $Log ]
ECHO "Test 13 Tr OR Fa OR Fa : True : PASSED" >> ${Log}
SET P = $P + 1
FI
ELSE
Echo " Test 13 Tr OR Fa OR Fa : False : FAILED"
IF [ -N $Log ]
ECHO "Test 13 Tr OR Fa OR Fa : False : FAILED" >> ${Log}
SET F = $F + 1
FI
FI
# 14th Test Fal OR Tru OR Fal
SET T = $T + 1
IF [ 99 -EQ 79 ] OR [ 99 -EQ 99 ] OR [ "A" = "b" ]
Echo " Test 14 Fa OR Tr OR Fa : True : PASSED"
IF [ -N $Log ]
ECHO "Test 14 Fa OR Tr OR Fa : True : PASSED" >> ${Log}
SET P = $P + 1
FI
ELSE
Echo " Test 14 Fa OR Tr OR Fa : False : FAILED"
IF [ -N $Log ]
ECHO "Test 14 Fa OR Tr OR Fa : False : FAILED" >> ${Log}
SET F = $F + 1
FI
FI
# 15th Test Fal OR Fal OR Tru
SET T = $T + 1
IF [ 99 -EQ 79 ] OR [ "A" = "b" ] OR [ 99 -EQ 99 ]
Echo " Test 15 Fa OR Fa OR Tr : True : PASSED"
IF [ -N $Log ]
ECHO "Test 15 Fa OR Fa OR Tr : True : PASSED" >> ${Log}
SET P = $P + 1
FI
ELSE
Echo " Test 15 Fa OR Fa OR Tr : False : FAILED"
IF [ -N $Log ]
ECHO "Test 15 Fa OR Fa OR Tr : False : FAILED" >> ${Log}
SET F = $F + 1
FI
FI
# 16th Test Fal OR Fal OR Fal
SET T = $T + 1
IF [ 99 -EQ 79 ] OR [ "A" = "b" ] OR [ 99 -LT 79 ]
Echo " Test 16 Fa OR Fa OR Fa : True : FAILED"
IF [ -N $Log ]
ECHO "Test 12 Fa OR Fa OR Fa : True : FAILED" >> ${Log}
SET F = $F + 1
FI
ELSE
Echo " Test 16 Fa OR Fa OR Fa : False : PASSED"
IF [ -N $Log ]
ECHO "Test 16 Fa OR Fa OR Fa : False : PASSED" >> ${Log}
SET P = $P + 1
FI
FI
# 17th Test Fal OR Tru AND Tru
SET T = $T + 1
IF [ 99 -EQ 79 ] OR [ "A" = "A" ] AND [ 99 -EQ 99 ]
Echo " Test 17 Fa OR Tr AND Tr : True : PASSED"
IF [ -N $Log ]
ECHO "Test 17 Fa OR Tr AND Tr : True : PASSED" >> ${Log}
SET P = $P + 1
FI
ELSE
Echo " Test 17 Fa OR Tr AND Tr : False : FAILED"
IF [ -N $Log ]
ECHO "Test 17 Fa OR Tr AND Tr : False : FAILED" >> ${Log}
SET F = $F + 1
FI
FI
# 18th Test Fal OR Tru AND Fal
SET T = $T + 1
IF [ 99 -EQ 79 ] OR [ "A" = "A" ] AND [ 99 -LT 79 ]
Echo " Test 18 Fa OR Tr AND Fa : True : FAILED"
IF [ -N $Log ]
ECHO "Test 18 Fa OR Tr AND Fa : True : FAILED" >> ${Log}
SET F = $F + 1
FI
ELSE
Echo " Test 18 Fa OR Tr AND Fa : False : PASSED"
IF [ -N $Log ]
ECHO "Test 18 Fa OR Tr AND Fa : False : PASSED" >> ${Log}
SET P = $P + 1
FI
FI
# 19th Test Fal OR Tru AND Tru
SET T = $T + 1
IF [ 99 -EQ 79 ] OR [ "A" = "A" ] AND [ 79 -LT 99 ]
Echo " Test 19 Fa OR Tr AND Tr : True : PASSED"
IF [ -N $Log ]
ECHO "Test 19 Fa OR Tr AND Tr : True : PASSED" >> ${Log}
SET P = $P + 1
FI
ELSE
Echo " Test 19 Fa OR Tr AND Tr : False : FAILED"
IF [ -N $Log ]
ECHO "Test 19 Fa OR Tr AND Tr : False : FAILED" >> ${Log}
SET F = $F + 1
FI
FI
MAN
TEXT /MAKE/USR/SHARE/TESTS/IFANDORTEST
this tests the IF [] AND [] and IF [] OR []
we should test all of --> true true | true false | false true | false false variants
need to write a subs standalone script that I call with . subs
and then can get rid of with SET -F
EXIT, or EXIT <exp>
EXIT $RC + 1 works