This commit is contained in:
John LeFebvre 2024-01-17 23:07:01 +00:00
commit b07bdce5d3
13 changed files with 109 additions and 75 deletions

View File

@ -1,6 +1,19 @@
# A2osX Multi-Tasking OS for Apple II
### Updated February 10, 2020
## Latest News 2024-01-17
It has been a long time since the news has been updated, but that doesn't mean that development on A2osX has ceased in the last 4 years! We've actually had quite a number of releases over this time. In general, stability has been greatly improved but there have also been additions like BASIC.FX which is a ProDOS BASIC.SYSTEM environment which supports a number of ProDOS FX extensions (RamWorks III and extension commands for starters).
As far as where things are going now, development is underway on Kernel 1.0 which will finally bring support for breaking past the 128KB barrier of the //e series by supporting RamWorks-type memory cards. In the past, RamWorks boards were supported but would only allow for /RAM type storage. With Kernel 1.0, up to 8MB of RAM can now be used for code and applications! Early builds of the new kernel are expected in 1H 2024.
With current builds and all going forward, the distributions are only shipped with [ProDOS FX](ProDOS.md) by default. While 2.0.3tc is still available and can be used with A2osX, the recommendation is now to use FX because of the filename case handling in addition to the number of under-the-hood improvements that FX offers. Both FX and 2.0.3tc's clock tables have been updated for 2024.
We are currently looking for volunteers to help with flushing out the C libraries! A C89-compliant compiler is available, however, the API needs some work to be compliant and can result in changing the kernel's APIs too, so "the sooner, the better" as the saying goes. Want to help? Reach out on the Slack server!
Finally, we are always looking for people to help! A project as complicated at A2osX requires a lot of testing, but we always need help with creating new applications, libraries, and documentation. If you have some applicable skills, let us know!
## Latest News February 10, 2020
A2osX Version 0.93 Release Candidate has been finalized. Media for this release, based on Build 193x are now available. Future STABLE and BLEED builds will be based on work to complete 0.94. Work has already started to make the A2osX API fully C compliant. This will allow a new CSH shell and CC compiler to be added to A2osX as well as an enhanced web server (*httpd*) that can serve active server pages formed by user created CSH scripts. In addition, Double High Graphics Resolution (DHGR) and Mouse drivers are being finalized which will allow developers to create games and new user interfaces for their A2osX applications.
@ -257,4 +270,4 @@ The full A2osX license can be found **[Here](../LICENSE)**.
## Copyright
Copyright 2015 - 2020, Remy Gibert and the A2osX contributors.
Copyright 2015 - 2024, Remy Gibert and the A2osX contributors.

Binary file not shown.

View File

@ -1523,14 +1523,14 @@ BS.KW.MEM jsr MON.CROUT
sta $260+11
lda #0
sta XBC10
.2 ldx #BSX.Mem.X
.2 pha
ldx #BSX.Mem.X
jsr BS.ToAUX
jsr BS.LINEBUFOUT
inc XBC10
lda XBC10
pla
inc
cmp #6
bne .2
@ -1763,16 +1763,16 @@ BS.KW.PATH lda GP.FoundBITS
jsr BS.ToAUX
jsr MON.CROUT
ldx #$00
ldx #$ff
.1 cpx BS.CMDBUF.LEN
.1 inx
cpx BS.CMDBUF.LEN
beq .2
lda BS.CMDBUF+1,x
lda BS.CMDBUF,x
ora #$80
jsr MON.COUT
inx
bne .1
bra .1
.2 jsr MON.CROUT
jsr MON.CROUT

View File

@ -154,7 +154,9 @@ GP.MLIERR2 lda BS.BIERRTBL,x
GP.COPYRIGHT .AS -"COPYRIGHT APPLE, 1983"
jmp BS.GETBUFR GP.GETBUFR
jmp BS.FREEBUFR GP.FREEBUFR
.BS 5 GP.RSHIMEM
.BS 1 GP.RSHIMEM
.BS 1
jmp (BS.TBOX,x) GP.TBOX
*--------------------------------------
MAN
SAVE usr/src/basic.fx/basic.s.gp

View File

@ -20,11 +20,9 @@ BSX.Rel lda GP.MLIRW.DATAPTR
sbc GP.FIAUXTYPE+1
sta BSX.RelOfs+1
ldy #2
lda (ZP.A1L),y
lda GP.FIAUXTYPE
sta BSX.RelStart
iny
lda (ZP.A1L),y
lda GP.FIAUXTYPE+1
sta BSX.RelStart+1
ldy #10

View File

@ -18,7 +18,7 @@ NEW
.INB inc/as.i
.INB inc/mon.i
*--------------------------------------
HIMEM .EQ $A000
HIMEM .EQ $9F00
LOWERCASE .EQ 1
*--------------------------------------
ZPPtr1 .EQ 0
@ -101,6 +101,10 @@ LDR.MAIN.DST .EQ *
.INB usr/src/basic.fx/basic.s.a
.INB usr/src/basic.fx/basic.s.b
.INB usr/src/basic.fx/basic.s.c
BS.TBOX .DA PrintFYA
.INB usr/src/shared/x.printf.s
.INB usr/src/basic.fx/basic.s.d
MAIN.LEN .EQ *-LDR.MAIN.DST
.EP

View File

@ -24,30 +24,43 @@ HEADER cld Allows BRUN at ORG=$2000
.DA 0
.DA 0 spare....16 bytes header
*--------------------------------------
R.MSG .DA MSG
R.MSG.HELLO .DA MSG.HELLO
R.MSG.RELOC .DA MSG.RELOC
.DA 0
*--------------------------------------
CODE.START ldx #0
.1 lda MSG,x ABS relocation required
.1 lda MSG.HELLO,x ABS relocation required
beq .2
jsr MON.COUT
inx
bne .1
.2
.2 lda R.MSG.HELLO
pha
lda R.MSG.HELLO+1
pha
lda HEADER+2
pha
lda HEADER+3
pha
ldy R.MSG.RELOC
lda R.MSG.RELOC+1
ldx #GP.TBOX.PrintF
jsr GP.TBOX
.8 clc
rts
CODE.END .EQ *
*--------------------------------------
MSG .CZ -"\r\rHello from test EXT command.\r\r"
MSG.HELLO .CZ -"\r\rHello from test EXT command.\r\r"
MSG.RELOC .CS "Code relocated at $%H\r"
.CZ "Data relocated at $%H\r"
DATA.END .EQ *
*--------------------------------------
MAN

View File

@ -52,6 +52,7 @@ L.TBOX1.Status .DA TBOX1.Status
L.LBOX1.List .DA LBOX1.List
L.LABEL.Label .DA LABEL.Label
L.TLINE.Default .DA TLINE.Default
L.RADIO1.List .DA RADIO1.List
L.CBOX1.Label .DA CBOX1.Label
L.BUTQ.Label .DA BUTQ.Label
@ -215,6 +216,10 @@ CS.TLINE.Init >PUSHB hSCRN hParent
>PUSHWI 65 Len
>LIBCALL hLIBTUI,LIBTUI.NewTLine
>PUSHEA.G TLINE.Buf
>PUSHW L.TLINE.Default
>SYSCALL StrCpy
.9 rts
*--------------------------------------
CS.RADIO.Init >PUSHB hSCRN hParent
@ -360,46 +365,28 @@ SCRN.Status .AZ "Status bar..."
TBOX1.Title .AZ "Text Box Title"
TBOX1.Status .AZ "Text Box Status"
*--------------------------------------
LBOX1.List .AS "Item 1"
.DA #C.CR
.AS "Item 2"
.DA #C.CR
.AS "Item 3"
.DA #C.CR
.AS "Item 4"
.DA #C.CR
.AS "Item 5"
.DA #C.CR
.AS "Item 6 very long line"
.DA #C.CR
.AS "Item 7"
.DA #C.CR
.AS "Item 8"
.DA #C.CR
.AS "Item 9"
.DA #C.CR
.AS "Item 10"
.DA #C.CR
.AS "Item 11"
.DA #C.CR
.AS "Item 12"
.DA #C.CR
.AS "Item 13"
.DA #C.CR
.AS "Item 14 last one"
.DA #0
LBOX1.List .CS "Item 1\r"
.CS "Item 2\r"
.CS "Item 3\r"
.CS "Item 4\r"
.CS "Item 5\r"
.CS "Item 6 very long line\r"
.CS "Item 7\r"
.CS "Item 8\r"
.CS "Item 9\r"
.CS "Item 10\r"
.CS "Item 11\r"
.CS "Item 12\r"
.CS "Item 13\r"
.CZ "Item 14 last one\r"
*--------------------------------------
LABEL.Label .AZ "This is a label."
*--------------------------------------
RADIO1.List .DA #C.ESC
.AS "[91mRed"
.DA #C.CR
.DA #C.ESC
.AS "[92mGreen"
.DA #C.CR
.DA #C.ESC
.AS "[96mBlue"
.DA #0
TLINE.Default .AZ "This is a Line."
*--------------------------------------
RADIO1.List .CS "\e[91mRed\r"
.CS "\e[92mGreen\r"
.CZ "\e[96mBlue\r"
*--------------------------------------
CBOX1.Label .AZ "Check Me"
*--------------------------------------

View File

@ -180,6 +180,8 @@ GP.CCCSPARE .EQ $BEDF
GP.GETBUFR .EQ $BEF5
GP.FREEBUFR .EQ $BEF8
GP.RSHIMEM .EQ $BEFB
GP.TBOX .EQ $BEFD
GP.TBOX.PrintF .EQ 0
*--------------------------------------
MAN
SAVE inc/bs.i

View File

@ -92,7 +92,7 @@ CBOX.Run ldy #S.BUT.HotKey
sec
rts
*--------------------------------------
CBOX.Draw ldx #'('
CBOX.Draw ldx #'<'
ldy #S.OBJ.S
lda (ZPObjPtr),y
@ -121,7 +121,7 @@ CBOX.Draw ldx #'('
.11 txa
jsr LB.COut
ldx #')'
ldx #'>'
plp
bpl .12

View File

@ -43,6 +43,16 @@ TLINE.Run ldy #S.OBJ.S
bpl .9 S.OBJ.S.bActive
jsr OBJ.GetBuf
ldy #$ff
.1 iny
lda (ZPPtr1),y
bne .1
tya
ldy #S.TLINE.Len
sta (ZPObjPtr),y
lda (pStack) Event
cmp #C.DEL
@ -82,14 +92,14 @@ TLINE.Run ldy #S.OBJ.S
ply
.1 dey
.3 dey
lda (ZPPtr1),y
iny
sta (ZPPtr1),y
dey
cpy TempW
bne .1
bne .3
lda (pStack)
ldy TempW

View File

@ -1,8 +1,8 @@
# A2osX Multi-Tasking OS for Apple II
### Updated May 24, 2020
### Updated January 17, 2024
## A2osX 0.94
## A2osX 0.95
![](./.screen-shots/ScreenShot.Logo.png)
@ -22,16 +22,21 @@ Consult the **[documentation](#documentation)** section below to find other reso
## News
### KansasFest 2021
### Lots of updates for 2024!
The A2osX team is proud to present "A2osX and the Languages of Development," a virtual KansasFest 2021 presentation by Patrick Kloepfer, which you can find **[here](https://www.youtube.com/watch?v=5OO9vj991vo)**.
It has been a long time since the news has been updated, but that doesn't mean that development on A2osX has ceased in the last 4 years! We've actually had quite a number of releases over this time. In general, stability has been greatly improved but there have also been additions like BASIC.FX which is a ProDOS BASIC.SYSTEM environment which supports a number of ProDOS FX extensions (RamWorks III and extension commands for starters).
### Upcoming Release - 0.94 Stable Alpha
As far as where things are going now, development is underway on Kernel 1.0 which will finally bring support for breaking past the 128KB barrier of the //e series by supporting RamWorks-type memory cards. In the past, RamWorks boards were supported but would only allow for /RAM type storage. With Kernel 1.0, up to 8MB of RAM can now be used for code and applications! Early builds of the new kernel are expected in 1H 2024.
The A2osX Team is preparing to issue the first Stable Alpha of A2osX Version 0.94. This new version will include an updated version of ProDOS FX, further kernel enhancements to improve memory usage and for the first time an included Assembler so developers can edit, assemble and test problems all from with A2osX. We are inviting interested developers and testers to [join us on Slack!](#join-us-on-slack)
With current builds and all going forward, the distributions are only shipped with [ProDOS FX](ProDOS.md) by default. While 2.0.3tc is still available and can be used with A2osX, the recommendation is now to use FX because of the filename case handling in addition to the number of under-the-hood improvements that FX offers. Both FX and 2.0.3tc's clock tables have been updated for 2024.
We are currently looking for volunteers to help with flushing out the C libraries! A C89-compliant compiler is available, however, the API needs some work to be compliant and can result in changing the kernel's APIs too, so "the sooner, the better" as the saying goes. Want to help? Reach out on the Slack server!
Finally, we are always looking for people to help! A project as complicated at A2osX requires a lot of testing, but we always need help with creating new applications, libraries, and documentation. If you have some applicable skills, let us know!
If you would like to read all the past news articles for A2osX, you can read the news article found **[here](.Docs/News.md)**.
## **Visit us at [A2osX](http://www.a2osx.com)**
This is just a place holder and plug for our [A2osX](http://www.a2osx.com) internet site. Stay tuned here for news about this site. We have created a Page to discuss A2osX on **[Facebook](https://www.facebook.com/A2osx-372512896625840/)** and have a new **[Twitter](https://twitter.com/A2Osx)** handle to test new A2osX features which will soon be used as a messaging channel, so please follow. We have created a new forum for discussing A2osX, features, examples, use cases, etc. It can be found on **[Google Groups](https://groups.google.com/forum/#!forum/a2osx)**.
@ -75,4 +80,4 @@ The full A2osX license can be found **[Here](LICENSE)**.
## Copyright
Copyright 2015 - 2020, Remy Gibert and the A2osX contributors.
Copyright 2015 - 2024, Remy Gibert and the A2osX contributors.

View File

@ -74,7 +74,7 @@ PrintFYA.92 ldx #$83 RRAMWRAMBNK2
lda $C000,x
PrintFYA.98 lda #$ff Self modified RTS HI
pha
PrintFYA.99 lda #$ff Self modified RTS LOPrintFYAPrintFYA
PrintFYA.99 lda #$ff Self modified RTS LO
pha
rts