Proposed open operating system/gui/shell (CalcOS-82,83,85,86)
[Prev][Next][Index][Thread]
Proposed open operating system/gui/shell (CalcOS-82,83,85,86)
I am proposing a new operating system. Unlike anything any other TI
calculator has seen (other than the 92). I have attached my notes so far.
Nothing is started yet so don't ask for a download site. I have been
looking at the state of ti calculators for a while and I have been thinking.
It is so hard for someone to get started programming. Once they do get
programming, there are so many operating systems (at least two for each
calculator) and twice as many gui/shell/apis. Most of them are also closed
source code. What I am proposing is an open operating system with
reasonable portability and SMALL size. The way I think that we can make it
small is with compression. If we had a small kernel and a compression
library, we could load and unload programs from RAM (or even a memory
expander like the ones for the TI-85) and dynamically decompress them. I
also think that the operating system needs to have dynamic linked libraries
so that common code can be shared (which would also help with size). I am
starting with the TI-82 (because that is what I have) and TASM (not the one
from Borland). I don't know a whole lot about assembly (especially Z80) but
I definitely know a lot about programming and operating systems.
By the way, the name I have chosen is CalcOS-82 (and in the future,
CalcOS-83, CalcOS-85, and CalcOS-86)
IF ANYONE WOULD LIKE TO HELP PROGRAM, E-MAIL ME! Please include which part
you would like to program (from the list in the attached file), don't go to
far ahead until we have the basic structure set up (i.e. kernel, basic gui)
--
Riley McArdle
rileym@geocities.com
http://griffn.base.org/
begin 666 CalcOS-82 Specifications.txt
M#0I#86QC3U,M.#(-"@T*5F5R<VEO;B P+C$N,# @4W!E8VEF:6-A=&EO;G,-
M"@T*+2TM#0H-"E9E<G-I;VX@;G5M8F5R<R!W:6QL(&)E(&)A<V5D(&]N($=.
M52!V97)S:6]N<SH-"@T*32Y"+DY.#0H-"DT@/2!-86IO<B!V97)S:6]N(&YU
M;6)E<@T*0B ]($5V96X@9F]R('-T86)L92P@;V1D(&9O<B!U;G-T86)L92 H
M8F5T80T*3DX@/2!-:6YO<B!V97)S:6]N(&YU;6)E<B H8G5I;&0I#0H-"BTM
M+0T*#0I#;VYT96YT<SH-"B M($=O86QS#0H@+2!$97-C<FEP=&EO;G,-"B M
M(%-C:&5D=6QE#0H-"BTM+0T*#0I';V%L<R!F;W(@0V%L8T]3+3@R.@T*#0HH
M<W1A<G)E9"!I=&5M<R!A<F4@:6X@=&AE(&1I<W1A;G0@9G5T=7)E*0T*#0I/
M<&5N("AS;W5R8V4@879A:6QA8FQE(&9R965L>2D-"DUO9'5L87(@*&ME<FYE
M;"P@9V1I+"!U:2P@;&EB<F%R:65S*0T*4VUA;&P-"DAA=F4@82!S=&%N9&%R
M9"!!4$D@=&AA="!C86X@8F4@<&]R=&5D('1O(&]T:&5R(%HX,"!C86QC=6QA
M=&]R<R H5$DM.#,L.#4L.#8I#0H-"BTM+0T*1&5S8W)I<'1I;VYS.@T*#0I+
M97)N96PZ#0H-"E!R;W9I9&5S(&UE;6]R>2!M86YA9V5M96YT#0I,;V%D<R!L
M:6)R87)I97,@86YD(&5X96-U=&5S(&-O9&4@*&EN8VQU9&EN9R!P<F]G<F%M
M<RD-"BI,:6YK<R!T;R!T:&4@.#(@4D]-#0I0<F]V:61E<R!$3$P@:6YF<F%S
M=')U8W1U<F4-"E!R;W9I9&5S(&)A<VEC('1A<VL@;6%N86=E;65N= T*4')O
M=FED97,@8F%S:6,@8V]O<&5R871I=F4@;75L=&ET87-K:6YG#0HJ4')O=FED
M97,@;75L=&DM=&AR96%D:6YG#0HJ4')O=FED97,@:6YT97)P<F]C97-S(&-O
M;6UU;FEC871I;VX-"E!R;W9I9&4@8V%L;&)A8VL@:6YF<F%S=')U8W1U<F4@
M9F]R(%5)#0H-"D=$23H-"@T*4')O=FED97,@86-C97-S('1O('1H92!S8W)E
M96X@*&EN(&$@<&]R=&%B;&4@=V%Y*0T*2&%S(&5N:&%N8V5D(&9U;F-T:6]N
M<R!F;W(@9')A=VEN9R H8VER8VQE<RP@<W%U87)E<RP@<&]L>6=O;G,I#0HJ
M4')O=FED97,@96%S>2!I;G1E<F9A8V4@=&\@9W)A>7-C86QI;F<-"BI296=I
M;VYS(&%N9"!R96=I;VX@8VQI<'!I;F<-"BI&;VYT<PT*#0I523H-"@T*4')O
M=FED97,@=7-E<B!I;G1E<F9A8V4-"E=I;F1O=W,L($-O;G1R;VQS+"!M96YU
M<RP@971C+@T*4')O=FED92!M97-S86=E(&EN=&5R9F%C92!F;W(@8V]N=')O
M;',-"@T*4VAE;&PZ#0H-"D)A<VEC(&EN=&5R9F%C92!T;R!S=&%R="!P<F]G
M<F%M<PT**D-R96%T92!A;B!E>'1E;F1E9"!S:&5L;"!F;W(@=&AE(&5N=&ER
M92!C86QC=6QA=&]R("AT;R!A8V-E<W,@8G5I;'0@:6X@4D]-(&9U;F-T:6]N
M<RD-"@T*3&EB<F%R:65S.@T*#0I#;VUP<F5S<VEO;B]3=&]R86=E(&QI8G)A
M<GD@*&EN<W1E860@;V8@<W1O<FEN9R!P<F]G<F%M<R!D:7)E8W1L>2!I;B!2
M04TL(&-O;7!R97-S('1H96T@:6X@4D%-(&%N9"!T:&5N(&1E8V]M<')E<W,@
M=&AE;2!T;R!R=6X-"E9E<G-I;VX@;6%N86=E;65N=" H=&\@:V5E<"!T<F%C
M:R!O9B!D:69F97)E;G0@=F5R<VEO;G,@;V8@;&EB<F%R:65S*0T**DAA=F4@
M9'EN86UI8R!C;V1E(&-O;7!R97-S:6]N("AT;R!R=6X@<&%R=',@;V8@<')O
M9W)A;7,@<V5P87)A=&5L>2!U;F-O;7!R97-S960I#0HJ0V]M;75N:6-A=&EO
M;B!L:6)R87)Y("AF;W(@=&AE(&1A=&$@<&]R="D-"BI3;W5N9"!L:6)R87)Y
M("AF;W(@=&AE(&1A=&$@<&]R="D-"BI-96UO<GD@97AP86YD97(@*&QI:V4@
M9F]R('1H92 X-2D@8G5T('=I=&@@82!M96UO<GD@;6%N86=E<B!T;R!D>6YA
M;6EC;'D@=6YC;VUP<F5S<R!A;F0@;&]A9"!P<F]G<F%M<R!I;G1O(&%C=&EV
M92!204T-"@T*+2TM#0H-"E-C:&5D=6QE.@T*#0I02$%312 Q.@T*0F%S:6,@
M;&]W+6QE=F5L('-T=69F("AF:7)S="!T:&EN9W,@9FER<W0A*0T*#0H@+2!"
M87-I8R!L;V%D:6YG(&EN=&5R9F%C92 H=&\@9V5T('1H92!K97)N96P@<W1A
M<G1E9"D-"B M($ME<FYE;#H-"B @("T@0F%S:6,@;65M;W)Y(&UA;F%G96UE
M;G0-"B @("T@0F%S:6,@4D]-(&-A;&P@<W5P<&]R= T*(" @+2!$3$P@:6YT
M97)F86-E#0H-"E!(05-%(#(Z#0I/;F-E('=E(&AA=F4@=&AE(&)A<VEC(&QO
M861I;F<@86YD($1,3"!I;G1E<F9A8V4L(&ET('=I;&P@8F4@;75C:"!E87-I
M97(@=&\@=')Y('1H:6YG<R!A;F0@<W!R96%D(&]U="!D979E;&]P96UE;G0@
M86UO;F<@<&5O<&QE#0H-"B M($ME<FYE;#H-"B @("T@5&%S:R!M86YA9V5M
M96YT("AW:6QL(&)E(&5X<&%N9&5D('1O(&UU;'1I=&%S:VEN9R!L871E<B M
M+2!R:6=H="!N;W<L(&IU<W0@9F]R(&QO861I;F<@86YD(&5N9&EN9R!T87-K
M<R]P<F]G<F%M<RD-"B M($=523H-"B @("T@1V5T('1H92!B87-I8R!F<F%M
M97=O<FL@*&UO<W1L>2!I;G1E<F9A8V4@=&\@=&AE($1,3"!M86YA9V5R*0T*
M(" @+2!)<F]N(&]U="!$3$P@<W1U9F8@*'1H:7,@:7,@=&AE(&9I<G-T($1,
M3"!M;V1U;&4I#0H@(" M($)A<VEC(&1R87=I;F<@9G5N8W1I;VYS("AP;VEN
M=',L(&QI;F5S*0T*("T@4VAE;&PZ#0H@(" M($=E="!A(&)A<VEC('-H96QL
M(&=O:6YG('1O(&QO860O=6YL;V%D('!R;V=R86US#0H-"E!(05-%(#,Z#0I!
M8F]U="!H97)E+"!W92!S:&]U;&0@:&%V92!A;B!E87)L>2!A;'!H82!T:&%T
M(&-A;B!R=6X@<')O9W)A;7,A("!3;VUE;VYE('-H;W5L9"!S=&%R="!O;B!A
M('-M86QL(&=A;64@;W(@<V]M971H:6YG(&9O<B!U<V4@9F]R('1E<W1I;F<@
M86YD(&1E;6]N<W1R871I;VXN#0H-"B M($ME<FYE;#H-"B @("T@17AP86YD
M(&]N('1A<VL@;6%N86=E;65N="P@<W1A<G0@;VX@;75L=&ET87-K:6YG#0H@
M(" M(%-T87)T(&]N(&-A;&QB86-K(&9U;F-T:6]N<R!F;W(@=&AE(%5)("AS
M;R!T:&%T(&-O;G1R;VQS(&-A;B!G970@;65S<V%G97,@9G)O;2!T:&4@3U,@
M86)O=70@8VQI8VMS(&]N(&)U='1O;G,@86YD('-T=69F(&QI:V4@=&AA="D-
M"B M($=523H-"B @("T@1V5T(&)A<VEC('!R;V)L96US(&ER;VYE9"!O=70-
M"B @("T@1FEN:7-H('5P(&)A<VEC(&1R87=I;F<@<W1U9F8@*&-I<F-L97,L
M(&-U<G9E<RP@<&]L>6=O;G,L(&5T8RXI#0H@(" M(%-T87)T(&)A<VEC('1E
M>'0O9F]N="!D<F%W:6YG('-T=69F#0H@+2!523H-"B @("T@3&%Y('1H92!F
M<F%M97=O<FL@9F]R('1H92!G=6D-"B @("T@5VEN9&]W<R!A;F0@8F%S:6,@
M=VEN9&]W(&UA;F%G96UE;G0@*&-R96%T92P@9&5S=')O>2D-"B M($QI8G)A
M<FEE<SH-"B @("T@4W1A<G0@=V]R:VEN9R!O;B!T:&4@8V]M<')E<W-I;VX@
M;&EB<F%R:65S#0H-"E!(05-%(#0Z#0I.;W<@=V4@=VEL;"!H879E(&$@<')E
M='1Y(&YI8V4@;W!E<F%T:6YG('-Y<W1E;2 H86)O=70@;VX@<&%R('=I=&@@
M;W1H97(@3U-E<R M+2!A="!L96%S="!O;B!B87-I8R!F=6YC=&EO;F%L:71Y
M*0T*#0H@+2!+97)N96PZ#0H@(" M($9I;FES:"!U<"!M=6QT:71A<VMI;F<-
M"B @("T@1FEN:7-H('5P(&-A;&QB86-K(&9U;F-T:6]N<PT*("T@1U5).@T*
M(" @+2!&:6YI<V@@=7 @=&5X="]F;VYT<PT*("T@54DZ#0H@(" M(%-T87)T
M('=O<FMI;F<@;VX@8V]N=')O;',L(&UE;G5S+"!A;F0@;W1H97(@:6YT97)F
M86-E(&5L96UE;G1S#0H@+2!,:6)R87)I97,Z#0H@(" M(%-T87)T('9E<G-I
M;VX@;6%N86=E;65N="!L:6)R87)I97,-"@T*4$A!4T4@-3H-"D=E="!R96%D
M>2!F;W(@82!B971A('9E<G-I;VXN#0H-"B M($ME<FYE;#H-"B @("T@1&5B
M=6<-"B @("T@061D(&5X=&5N9&5D(&9U;F-T:6]N<R!A<R!N965D960-"B M
M($=523H-"B @("T@1&5B=6<-"B @("T@061D(&5X=&5N9&5D(&9U;F-T:6]N
M<R!A<R!N965D960-"B M(%5).@T*(" @+2!&:6YI<V@@=7 @8V]N=')O;',@
M86YD(&EN=&5R9F%C92!E;&5M96YT<PT*("T@3&EB<F%R:65S.@T*(" @+2!&
M:6YI<V@@=F5R<VEO;B!M86YA9V5M96YT(&9O<B!B971A(#$A#0H-"D)%5$$@
$,2$A(0``
`
end
Follow-Ups: