changeset 25:c4e3abe97e2c

rmb in os9 mode
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 10 Jul 2018 15:38:58 +0900
parents 7104ad38bed3
children 51a35f0347f6
files a09.c os9/level2/Makefile os9/level2/cc3go.asm
diffstat 3 files changed, 6 insertions(+), 169 deletions(-) [+]
line wrap: on
line diff
--- a/a09.c	Tue Jul 10 10:49:07 2018 +0900
+++ b/a09.c	Tue Jul 10 15:38:58 2018 +0900
@@ -316,7 +316,7 @@
     generating = 1;
     if (prevloc) {
        oldlc = loccounter  = prevloc-1 ;
-       prevloc = 0;
+       os9 = prevloc = 0;
     }
 }
 
@@ -1137,13 +1137,6 @@
    putword(scanexpr(0));   
    skipspace();
  }
- if(pass==2) {
-  outbuffer();
- }
- loccounter+=codeptr;
- codeptr=0;
- prevloc = loccounter+1;
- oldlc = loccounter = 0;
 }
 
 void os9end()
@@ -1271,7 +1264,6 @@
         if(!operand)suppress=2;
         break;                
  case 12: /* ORG */
-         if (os9 && !prevloc) prevloc = loccounter+1;
          operand=scanexpr(0);
          if(unknown)error|=4;
          if(generating&&pass==2&&!outmode&&!os9) {
@@ -1402,6 +1394,10 @@
  }
  if(error)report();
  loccounter+=codeptr;
+ if (os9 && prevloc==0 ) {
+     prevloc = loccounter+1;
+     oldlc = loccounter = 0;
+ }
 }
 
 void
--- a/os9/level2/Makefile	Tue Jul 10 10:49:07 2018 +0900
+++ b/os9/level2/Makefile	Tue Jul 10 15:38:58 2018 +0900
@@ -7,7 +7,7 @@
 all : ioman pdisk init os9p1 os9p2 os9p3_perr os9p4_regdump pipe pipeman pipeman_named piper rbf scf term pty d0 d1 clock vector boot shell dir mdir sysgo
 
 clean : 
-	rm -f ioman pdisk init os9p1 os9p2 os9p3_perr os9p4_regdump pipe pipeman pipeman_named piper rbf scf term pty d0 d1 clock vector boot shell dir mdir
+	rm -f ioman pdisk init os9p1 os9p2 os9p3_perr os9p4_regdump pipe pipeman pipeman_named piper rbf scf term pty d0 d1 clock vector boot shell dir mdir sysgo *.lst
 
 LST = -l $@.lst
 pdisk : 
--- a/os9/level2/cc3go.asm	Tue Jul 10 10:49:07 2018 +0900
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,159 +0,0 @@
-********************************************************************
-* CC3Go - Kickstart program module
-*
-* $Id: cc3go.asm,v 1.1.1.1 2001/02/21 23:30:54 boisy Exp $ 
-*
-* Ed.    Comments                                       Who YY/MM/DD
-* ------------------------------------------------------------------
-* 5      Taken from OS-9 L2 Tandy distribution and      BGP 98/10/12
-*        modified banner for V3
-
-         nam   CC3Go
-         ttl   Kickstart program module
-
-         ifp1
-         use   defsfile
-         use   scfdefs
-         endc
-
-tylg     set   Prgrm+Objct
-atrv     set   ReEnt+rev
-rev      set   $01
-edition  set   $05
-
-         mod   eom,name,tylg,atrv,start,size
-
-u0000    rmb   32
-u0020    rmb   42
-u004A    rmb   33
-u006B    rmb   6
-u0071    rmb   655
-size     equ   .
-
-name     fcs   /CC3Go/
-         fcb  edition
-
-Banner   fcc   / OS-9 LEVEL TWO VR. 0/
-         fcb   48+OS9Vrsn
-         fcc   /.0/
-         fcb   48+OS9Major
-         fcc   /.0/
-         fcb   48+OS9Minor
-         fcb   C$CR,C$LF
-         fcc   /     COPYRIGHT 1988 BY/
-         fcb   C$CR,C$LF
-         fcc   /   MICROWARE SYSTEMS CORP./
-         fcb   C$CR,C$LF
-         fcc   /   LICENSED TO TANDY CORP./
-         fcb   C$CR,C$LF
-         fcc   /    ALL RIGHTS RESERVED./
-         fcb   C$CR,C$LF
-         fcb   C$LF
-BannLen  equ   *-Banner
-DefDev   fcc   "/H0"
-         fcb   C$CR
-HDDev    fcc   "/H0/"
-ExecDir  fcc   "Cmds"
-         fcb   C$CR
-         fcc   ",,,,,"
-Shell    fcc   "Shell"
-         fcb   C$CR
-         fcc   ",,,,,"
-AutoEx   fcc   "AutoEx"
-         fcb   C$CR
-         fcc   ",,,,,"
-Startup  fcc   "STARTUP -P"
-         fcb   C$CR
-         fcc   ",,,,,"
-ShellPrm fcc   "i=/1"
-CRtn     fcb   C$CR
-         fcc   ",,,,,"
-ShellPL  equ   *-ShellPrm
-
-DefTime  fcb   88,10,01,00,00,00
-
-start    leax  >IcptRtn,pcr
-         os9   F$Icpt
-         os9   F$ID
-         ldb   #$80
-         os9   F$SPrior
-         leax  >Banner,pcr
-         ldy   #BannLen
-         lda   #$01                    standard output
-         os9   I$Write                 write out banner
-         leax  >DefTime,pcr
-         os9   F$STime                 set time to default
-         leax  >ExecDir,pcr
-         lda   #EXEC.
-         os9   I$ChgDir                change exec. dir
-         leax  >DefDev,pcr
-         lda   #READ.+WRITE.
-         os9   I$ChgDir                change data dir.
-         bcs   L0125
-         leax  >HDDev,pcr
-         lda   #EXEC.
-         os9   I$ChgDir                change exec. dir to HD
-L0125    pshs  u,y
-         os9   F$ID
-         bcs   L01A9
-         leax  ,u
-         os9   F$GPrDsc
-         bcs   L01A9
-         leay  ,u
-         ldx   #$0000
-         ldb   #$01
-         os9   F$MapBlk
-         bcs   L01A9
-* Set flag for Color BASIC
-         lda   #$55
-         sta   <D.CBStrt,u
-* Copy our default I/O ptrs to the system process
-         ldd   <D.SysPrc,u
-         leau  d,u
-         leau  <P$DIO,u
-         leay  <P$DIO,y
-         ldb   #DefIOSiz-1
-L0151    lda   b,y
-         sta   b,u
-         decb
-         bpl   L0151
-* Fork shell startup here
-         leax  >Shell,pcr
-         leau  >Startup,pcr
-         ldd   #256
-         ldy   #16
-         os9   F$Fork
-         bcs   L01A5
-         os9   F$Wait
-* Fork AutoEx here
-         leax  >AutoEx,pcr
-         leau  >CRtn,pcr
-         ldd   #$0100
-         ldy   #$0001
-         os9   F$Fork
-         bcs   L0186
-         os9   F$Wait
-L0186    puls  u,y
-         leax  >ShellPrm,pcr
-         leay  ,u
-         ldb   #ShellPL
-L0190    lda   ,x+
-         sta   ,y+
-         decb
-         bne   L0190
-* Fork final shell here
-         leax  >Shell,pcr
-         ldd   #$0100
-         ldy   #ShellPL
-         os9   F$Chain
-L01A5    ldb   #$06
-         bra   Crash
-L01A9    ldb   #$04
-Crash    clr   $FFA8                   turn off disk motor
-         jmp   <D.Crash
-
-IcptRtn  rti
-
-         emod
-eom      equ   *
-         end