comparison src/os9/makerom.c @ 84:9b661787d5ed

2Mbyte
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 11 Aug 2018 18:16:04 +0900
parents 2088fd998865
children
comparison
equal deleted inserted replaced
83:2e3d4b54ec2d 84:9b661787d5ed
30 * MMU doesnot touch below 30 * MMU doesnot touch below
31 * 0xff80 - 0xffdf IO port ( ACIA, clock, pdisk, MMU ) 31 * 0xff80 - 0xffdf IO port ( ACIA, clock, pdisk, MMU )
32 * 0xffd0 - 0xffef boot code 32 * 0xffd0 - 0xffef boot code
33 * 0xfff0 - 0xffff intr vector 33 * 0xfff0 - 0xffff intr vector
34 * ... next few blocks as extended ROM 34 * ... next few blocks as extended ROM
35 * lv2 6809 memory check routine destroys 0x200 on page 0x40
36 * sta >-$6000,x
37 * avoid 0x200
35 * 38 *
36 */ 39 */
37 40
38 int level = 1; 41 int level = 1;
39 int IOBASE = 0xe000; 42 int IOBASE = 0xe000;
327 int bootsize = 2; 330 int bootsize = 2;
328 for(struct os9module *cur = root.next; cur ; cur = cur->next ) { 331 for(struct os9module *cur = root.next; cur ; cur = cur->next ) {
329 if ( cur->ioflag ==0) continue; 332 if ( cur->ioflag ==0) continue;
330 bootsize += cur->size; 333 bootsize += cur->size;
331 } 334 }
335 bootsize += 0x300-2; // to avoid 0x200 bombing
332 fputc(bootsize>>8,romfile); 336 fputc(bootsize>>8,romfile);
333 fputc(bootsize&0xff,romfile); 337 fputc(bootsize&0xff,romfile);
334 pos += 2; 338 pos += 2;
339 for( int i = 0; i<0x300-2; i++) fputc(0xff,romfile);
335 for(struct os9module *cur = root.next; cur ; cur = cur->next ) { 340 for(struct os9module *cur = root.next; cur ; cur = cur->next ) {
336 if ( cur->ioflag ==0) continue; 341 if ( cur->ioflag ==0) continue;
337 cur->location = pos; 342 cur->location = pos;
338 printf("mod "); 343 printf("mod ");
339 printOs9Str(cur->name); 344 printOs9Str(cur->name);