# HG changeset patch # User Shinji KONO # Date 1533963894 -32400 # Node ID 82d03e816debd734526f68c7c124333f7b2a12e6 # Parent 92b7295062125899ce00ab9a1bf4833e5e62b343 fix diff -r 92b729506212 -r 82d03e816deb game09/game09.asm --- a/game09/game09.asm Tue Aug 07 12:31:52 2018 +0900 +++ b/game09/game09.asm Sat Aug 11 14:04:54 2018 +0900 @@ -20,18 +20,21 @@ dpage rmb $96 DP00 equ $00 -DP04 equ $04 variabble base A-Z (until DP36) +VAROFS equ $04 variabble base 'A'-'Z' until $36 +DP38 equ $38 variable end DP42 equ $42 program copy pointer -DP46 equ $46 -DP4A equ $4A input lineno +DP44 equ $44 variable 'a'-'z' until $76 +DP48 equ $48 """ +DP4A equ $4A "#" next line no DP4B equ $4B -DP4E equ $4E +DP4E equ $4E "%" DP4F equ $4F -DP50 equ $50 program top +DP50 equ $50 "&" program top DP52 equ $52 DP58 equ $58 program max +DP7C equ $7C "=" program current end DP7E equ $7E program current end -DP82 equ $82 +DP82 equ $82 "@" DP83 equ $83 DP84 equ $84 DP86 equ $86 input line (except lineno) @@ -56,11 +59,12 @@ name fcs "Game09" fcb edition +coldstart start * clrb * os9 F$Exit LC000 BRA LC005 LC002 NOP -LC003 BRA LC014 +LC003 BRA warmst LC005 TFR U,D TFR A,DP STU LC63F,PCR - LBSR LC165 -LC032 LBSR LC370 + LEAX >PRMPT,PCR + LBSR LPRNT +LC032 LBSR GETCLN BCS LC06D STX <$42 LBSR LC1D3 - BEQ LC024 + BEQ GAMETP LC03E BSR LC09C -LC040 BMI LC024 +LC040 BMI GAMETP STX <$42 LC044 LEAX +$02,X LDA ,X+ @@ -115,7 +119,7 @@ LC05F LDX <$42 STX <$84 BSR LC0A0 - BMI LC024 + BMI GAMETP CMPX <$84 BEQ LC03E BRA LC044 @@ -127,7 +131,7 @@ LC077 BSR LC09C listing LC079 LBSR LC397 TST ,X - BMI LC024 + BMI GAMETP BSR LC087 LBSR LC173 BRA LC079 @@ -135,7 +139,7 @@ PSHS X LBSR LC443 PULS X - LBRA LC165 + LBRA LPRNT LC093 LDX <$42 LEAX +$02,X LC097 TST ,X+ @@ -201,7 +205,7 @@ STB ,X+ BNE LC10E LC114 LBRA LC032 -LC117 LBRA LC024 +LC117 LBRA GAMETP LC11A LDX 0x100000 lapround * * discless boot - * rom image will be copyied from 0xed00-0x1xxxx - * boot copies 0x10000-0x1xxxx to os9's boot memory + * rom image will be copyied from 0xed00-0x1xxxx (all ram) + * boot copies 0x10000-0x1xxxx to os9's boot memory (ususally done by rel.asm ) + * after that 0x10000-0x1xxx will be all free */ phymem = malloc(memsize + len - 0x2000); rommemsize = memsize + len - 0x2000; @@ -153,7 +154,7 @@ int i; int setterm = 1; timerirq = 2; // use FIRQ default - memsize = 512*1024; + memsize = 512*1024*4; // full 2 mbute escchar='\x1d'; tracelo=0;tracehi=0xffff; for(i=1;i