[cc65] Atari crt0 update

Date view Thread view Subject view

From: Mark Keates (markk_at_dendrite.co.uk)
Date: 2000-03-20 15:15:23


Attached is an update to the Atari startup code. Also, the
LD65 settings for the Atari can be changed to: (Thanks Chris!)

static const char CfgAtari [] =
    "MEMORY {"
        "HEADER: start = $0000, size = $6, file = %O;"
        "RAM: start = $1F00, size = $6100, file = %O;"
    "}"
    "SEGMENTS {"
        "EXEHDR: load = HEADER, type = wprot;"
        "CODE: load = RAM, type = wprot, define = yes;"
        "RODATA: load = RAM, type = wprot;"
        "DATA: load = RAM, type = rw;"
        "BSS: load = RAM, type = bss, define = yes;"
        "AUTOSTRT: load = RAM, type = wprot;"
    "}";

Can you help me with the correct method of switching
off Sprites. I've saved and restored GRACTL, SDMCTL 
and GPRIOR but still they persist when returning to DOS.
(I can send you the example if you request it privately)
I don't want to just position them off screen, so what did
I miss? Perhaps PMBASE?

Regards,

Mark

 <<crt0.s>> 

begin 600 crt0.s
M.PT*.R!3=&%R='5P(&-O9&4_at_9F]R(&-C-C4@*$%405))('9E<G-I;VXI#0H[
M#0H[(%1H:7,@;75S="!B92!T:&4@*F9I<G-T*B!F:6QE(&]N('1H92!L:6YK
M97(@8V]M;6%N9"!L:6YE#0H[#0H-"@DN97AP;W)T"0E?97AI=`T*("`@("`@
M(`DN:6UP;W)T"2`@("`@("`)7U]H:6YI="P@:6YI=&-O;FEO+"!Z97)O8G-S
M+"!P=7-H87_at_L(&1O871E>&ET#0H)+FEM<&]R=`D)7VUA:6X-"@DN:6UP;W)T
M"0E?7T-/1$5?3$]!1%]?+"!?7T)34U],3T%$7U\-"@D-"@DN:6YC;'5D90DB
M871A<FDN:6YC(@T*#0H[("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+0T*
M.R!$969I;F4_at_86YD(&5X<&]R="!T:&4_at_6E`@=F%R:6%B;&5S(&9O<B!T:&4@
M0S8T(')U;G1I;64-"@T*"2YE>'!O<G1Z<"`@(`ES<"P@<W)E9RP@<F5G<V%V
M90T*"2YE>'!O<G1Z<"`@(`EP='(Q+"!P='(R+"!P='(S+"!P='(T#0H)+F5X
M<&]R='IP("`@"71M<#$L('1M<#(L('1M<#,L('1M<#0-"@DN97AP;W)T>G`@
M("`)9FYT96UP+"!R96=B86YK+"!Z<'-P86-E#0H-"@DN;W)G("0X,@T*<W`Z
M("`@("`)+G)E<R`R(`D@("`@.R!S=&%C:R!P;VEN=&5R#0IS<F5G._at_D)+G)E
M<R`R(`D@("`@.R!S96-O;F1A<GD@<F5G:7-T97(O:&EG:"`Q-B!B:70_at_9F]R
M(&QO;F=S#0IR96=S879E._at_DN<F5S(#0@"2`@("`[('-L;W0@=&\@<V%V92]R
M97-T;W)E("A%*4%8(&EN=&\-"G!T<C$Z"0DN<F5S(#(@"2`@("`[#0IP='(R
M._at_D)+G)E<R`R(`D@("`@.PT*<'1R,SH)"2YR97,@,B`)("`@(#L-"G!T<C0Z
M"0DN<F5S(#(@"2`@("`[#0IT;7`Q._at_D)+G)E<R`Q(`D@("`@.PT*=&UP,CH)
M"2YR97,@,2`)("`@(#L-"G1M<#,Z"0DN<F5S(#$@"2`@("`[#0IT;7`T._at_D)
M+G)E<R`Q(`D@("`@.PT*9FYT96UP._at_D)+G)E<R`R"0D[('!O:6YT97(@=&\@
M9FEL92!N86UE#0IR96=B86YK._at_DN<F5S(#8@"2`@("`[(#8_at_8GET92!R96=I
M<W1E<B!B86YK#0IZ<'-P86-E"0D]("H@+2!S<`D[(%IE<F\@<&%G92!S<&%C
M92!A;&QO8V%T960-"@T*.R`M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T-
M"CL_at_0D%324,@:&5A9&5R('=I=&@@82!365,@8V%L;`T*#0H)+G-E9VUE;G0@
M(D5814A$4B(-"@DN=V]R9`DD1D9&1_at_T*"2YW;W)D"5]?0T]$15],3T%$7U\-
M"@DN=V]R9`E?7T)34U],3T%$7U\@+2`Q#0H)+F-O9&4-"@DN<F5L;V,-"@D-
M"CL@+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM#0H[($%C='5A;"!C;V1E
M#0H-"CL_at_4V%V92!T:&4@>F5R;R!P86=E(&QO8V%T:6]N<R!W92!N965D#0H-
M"@EL9'D)(WIP<W!A8V4M,0T*3#$Z"6QD80ES<"QY#0H@("`)<W1A"7IP<V%V
M92QY#0H)9&5Y#0H@("`@("`@"6)P;`E,,0T*#0H[($-L96%R('1H92!"4U,@
M9&%T80T*#0H):G-R"7IE<F]B<W,-"@T*.R!3879E('-Y<W1E;2!S='5F9B!A
M;F0@<V5T=7`@=&AE('-T86-K#0H-"B`@("`@("`)='-X#0H@("`@("`@"7-T
M>"`@("`)<W!S879E#0H-"@EL9&$@("`@"59$4TQ35`T*"7-T80EO;&1?9&QI
M#0H);&1A"59$4TQ35"LQ#0H@("`@("`@"7-T80EO;&1?9&QI*S$-"@EL9&$@
M("`@"5-$3%-43`T*"7-T80EO;&1?9&QI<W0-"@EL9&$)4T1,4U1,*S$-"B`@
M("`@("`)<W1A"6]L9%]D;&ES="LQ#0H);&1A("`@(`E65D),2TD-"@ES=&$)
M;VQD7W9B:0T*"6QD80E65D),2TDK,0T*("`@("`@(`ES=&$);VQD7W9B:2LQ
M#0H);&1A("`@(`E65D),2T0-"@ES=&$);VQD7W9B9`T*"6QD80E65D),2T0K
M,0T*("`@("`@(`ES=&$);VQD7W9B9"LQ#0H);&1A"4=204-43`T*"7-T82`@
M("`);VQD7V=R80T*"6QD82`@("`)4T1-0U1,#0H)<W1A"6]L9%]D;6$-"@EL
M9&$)1U!224]2#0H@("`@("`@"7-T80EO;&1?<')I;W(-"@EL9&$@("`@"4-(
M4E-%5`T*"7-T80EO;&1?<V5T#0H);&1A("`@(`E,34%21TX-"@ES=&$);VQD
M7VQM87)G:6X-"@EL9&$@("`@"5)-05)'3_at_T*"7-T80EO;&1?<FUA<F=I;@T*
M#0H)3$19(",W#0I315154#$Z#0H)3$1!(%!#3TQ2,"Q9#0H)4U1!(&]L9%]C
M;VQS+%D-"@E$15D@#0H)0E!,(%-%5%50,0T*#0H);&1A("`@(`DC/"0X,#`P
M#0H)<W1A"7-P#0H);&1A"2,^)#@P,#`-"B`@("`@("`)<W1A"7-P*S$@("`)
M"3L_at_4V5T(&%R9W5M96YT('-T86-K('!T<@T*#0H[($EN:71I86QI>F4@=&AE
M(&AE87`-"@T*"6IS<@E?7VAI;FET#0H-"CL_at_26YI=&EA;&EZ92!C;VYI;R!S
M='5F9_at_T*#0H):G-R"6EN:71C;VYI;PT*#0H);&1A"2,D1D8-"@ES=&$)0TA2
M#0H-"CL_at_4&%S<R!A;B!E;7!T>2!C;VUM86YD(&QI;F4-"@T*"6QD82`@"2,P
M#0H)=&%X#0H):G-R"7!U<VAA>"`)("`).R!A<F=C#0H):G-R"7!U<VAA>`D@
M(`D[(&%R9W8-"@T*"6QD>0DC-`D@(`D[($%R9W5M96YT('-I>F4-"B`@("`@
M("`):G-R("`@(`E?;6%I;@D@(`D[(&-A;&P@=&AE('5S97)S(&-O9&4-"@T*
M.R!F86QL('1H<G4@=&\@97AI="XN+@T*#0I?97AI=#H):G-R"61O871E>&ET
M("`).R!C86QL(&5X:70_at_9G5N8W1I;VYS#0H-"@E,1$$)(S8-"@EL9'@);VQD
M7W9B:2LQ#0H);&1Y"6]L9%]V8FD-"@E*4U()4T545D)6#0H)3$1!"2,W#0H)
M;&1X"6]L9%]V8F0K,0T*"6QD>0EO;&1?=F)D#0H)2E-2"5-%5%9"5_at_T*"6QD
M82`@("`);VQD7V1L:0T*"7-T80E61%-,4U0-"@EL9&$);VQD7V1L:2LQ#0H@
M("`@("`@"7-T80E61%-,4U0K,0T*"6QD82`@("`);VQD7V1L:7-T#0H)<W1A
M"5-$3%-43`T*"6QD80EO;&1?9&QI<W0K,0T*("`@("`@(`ES=&$)4T1,4U1,
M*S$-"@EL9&$@("`@"6]L9%]G<F$-"@ES=&$)1U)!0U1,#0H);&1A"6]L9%]P
M<FEO<@T*("`@("`@(`ES=&$)1U!224]2#0H);&1A("`@(`EO;&1?9&UA#0H)
M<W1A"5-$34-43`T*"6QD82`@("`);VQD7W-E=`T*"7-T80E#2%)3150-"@EL
M9&$);VQD7VQM87)G:6X-"@ES=&$@("`@"4Q-05)'3_at_T*"6QD80EO;&1?<FUA
M<F=I;@T*"7-T82`@("`)4DU!4D=.#0H);&1A"2,D1D8-"@ES=&$)0TA2#0H)
M3$19(",W#0I315154#(Z#0H)3$1!(&]L9%]C;VQS+%D-"@E35$$@4$-/3%(P
M+%D-"@E$15D@#0H)0E!,(%-%5%50,@T*#0H);&1X"7-P<V%V90T*"71X<PD@
M("`)("`).R!297-T;W)E('-T86-K('!O:6YT97(-"@T*.R!#;W!Y(&)A8VL@
M=&AE('IE<F\@<&%G92!S='5F9_at_D@("`-"@T*"6QD>0DC>G!S<&%C92TQ#0I,
M,CH);&1A"7IP<V%V92QY#0H)<W1A"7-P+'D-"@ED97D-"B`@("`@("`)8G!L
M"4PR#0H-"CL_at_4F5S970@8VAA;F=E9"!V96-T;W)S+"!B86-K('1O(&)A<VEC
M#0H-"CL):FUP"5=!4DU35_at_T*"7)T<PT*#0HN9&%T80T*#0IZ<'-A=F4Z"2`@
M("YR97,)>G!S<&%C90T*#0HN8G-S#0H-"G-P<V%V93H@("`@("`N<F5S(#$-
M"@T*;VQD7V1L:3H@("`@("YR97,@,@T*;VQD7V1L:7-T.B`@("YR97,@,@T*
M;VQD7W9B:3H@("`@("YR97,@,@T*;VQD7W9B9#H@("`@("YR97,@,@T*;VQD
M7V=R83H@("`@("YR97,@,0T*;VQD7V1M83H@("`@("YR97,@,0T*;VQD7W!R
M:6]R.B`@("YR97,@,0T*;VQD7V-O;',Z("`@("YR97,@.`T*;VQD7W-E=#H@
M("`@("YR97,@,0T*;VQD7W)M87)G:6XZ("YR97,@,0T*;VQD7VQM87)G:6XZ
M("YR97,@,0T*#0H)+G-E9VUE;G0@(D%55$]35%)4(@T*"2YW;W)D"20P,D4P
F#0H)+G=O<F0))#`R13$-"@DN=V]R9`E?7T-/1$5?3$]!1%]?#0H=
`
end
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.


Date view Thread view Subject view

This archive was generated by hypermail 2.1.3 : 2001-12-14 22:05:36 CET