mirror of
https://github.com/A2osX/A2osX.git
synced 2025-01-26 03:31:24 +00:00
Merge branch 'master' of https://github.com/A2osX/A2osX
This commit is contained in:
commit
b07bdce5d3
@ -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.
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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"
|
||||
*--------------------------------------
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
19
README.md
19
README.md
@ -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.
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user