Mercurial > hg > Members > kono > os9 > sbc09
diff src/v09.c @ 84:9b661787d5ed
2Mbyte
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 11 Aug 2018 18:16:04 +0900 |
parents | 2e3d4b54ec2d |
children | 4652761a60f9 |
line wrap: on
line diff
--- a/src/v09.c Sat Aug 11 14:06:43 2018 +0900 +++ b/src/v09.c Sat Aug 11 18:16:04 2018 +0900 @@ -103,26 +103,25 @@ * In case of Coco, there is no ROM (switched out after boot ) * 0x00000-0x0fdff normal mem * 0x0fe00-0x0ffff ram fixed address ram including io - * 0x10000-0x7ffff ram (512Kb memory current implementation) - * it should have 2MB memory - * 0x10000-0xfffff ram - * >0x100000 lapround + * 0x10000-0x1fffff ram (2MB memory ) + * >0x200000 lapround * * discless boot - * 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 + * rom image will be copyied from 0x7eed00-0x7fxxxx (all ram) + * boot copies 0x800000-0x8xxxx to os9's boot memory (ususally done by rel.asm ) + * (original system copies it from fd or hd) + * after that 0x800000-0x8xxxx will be all free */ - phymem = malloc(memsize + len - 0x2000); - rommemsize = memsize + len - 0x2000; - mem = phymem + memsize - 0x10000 ; + phymem = malloc(memsize ); + rommemsize = memsize ; + mem = phymem + 0x38*0x2000; mmu = &mem[0xffa0]; prog = (char*)mem; if (romstart==0x8000) { - // romstart = memsize - 0x10000 + 0xed00 ; romstart = memsize ; // full 512kb mem } - fread(mem+ 0xe000,len,1,image); + fread(mem+ 0xe000,len,1,image); + mem[0xff90] = 0; mem[0xffa7] = 0x3f; #else if (romstart==0x8000) { @@ -154,7 +153,7 @@ int i; int setterm = 1; timerirq = 2; // use FIRQ default - memsize = 512*1024; // full 2 mbute + memsize = 512*1024*4; // full 2 mbute escchar='\x1d'; tracelo=0;tracehi=0xffff; for(i=1;i<argc;i++) {