URL
https://opencores.org/ocsvn/ao486/ao486/trunk
Subversion Repositories ao486
Compare Revisions
- This comparison shows the changes necessary to convert path
/ao486/trunk/bios
- from Rev 2 to Rev 3
- ↔ Reverse comparison
Rev 2 → Rev 3
/bochs-2.6.2/bochs-2.6.2.diff
0,0 → 1,135
diff -ruN bochs-2.6.2/bios/rombios.c bochs-2.6.2-ao486/bios/rombios.c |
--- bochs-2.6.2/bios/rombios.c 2013-04-21 22:09:49.000000000 +0200 |
+++ bochs-2.6.2-ao486/bios/rombios.c 2014-03-30 14:27:08.000000000 +0200 |
@@ -182,7 +182,7 @@ |
;; However, users can choose to make panics non-fatal and continue. |
#if BX_VIRTUAL_PORTS |
mov dx,#PANIC_PORT |
- mov ax,#?1 |
+ mov ax,#0x21 //ao #?1 |
out dx,ax |
#else |
mov dx,#0x80 |
@@ -1537,8 +1537,12 @@ |
uart_tx_byte(BX_DEBUG_PORT, c); |
#endif |
#if BX_VIRTUAL_PORTS |
- if (action & BIOS_PRINTF_DEBUG) outb(DEBUG_PORT, c); |
- if (action & BIOS_PRINTF_INFO) outb(INFO_PORT, c); |
+ if((action & BIOS_PRINTF_DEBUG) || (action & BIOS_PRINTF_INFO) || (action & BIOS_PRINTF_SCREEN)) { |
+ while(inw(DEBUG_PORT+6) == 0) { ; } |
+ } |
+ if (action & BIOS_PRINTF_DEBUG) outb(DEBUG_PORT, c); |
+ if (action & BIOS_PRINTF_INFO) outb(INFO_PORT, c); |
+ if (action & BIOS_PRINTF_SCREEN) outb(INFO_PORT, c); |
#endif |
if (action & BIOS_PRINTF_SCREEN) { |
if (c == '\n') wrch('\r'); |
@@ -1702,7 +1706,7 @@ |
|
if ((action & BIOS_PRINTF_DEBHALT) == BIOS_PRINTF_DEBHALT) { |
#if BX_VIRTUAL_PORTS |
- outb(PANIC_PORT2, 0x00); |
+ outb(PANIC_PORT2, '&'); //ao 0x00 |
#endif |
bios_printf (BIOS_PRINTF_SCREEN, "FATAL: "); |
} |
@@ -2509,7 +2513,9 @@ |
Bit16u base; |
Bit16u timeout; |
{ |
- Bit32u time=0,last=0; |
+//AO modif |
+ Bit16u time=0,last=0; |
+//AO modif |
Bit16u status; |
Bit8u result; |
status = inb(base + ATA_CB_STAT); // for the times you're supposed to throw one away |
@@ -2530,17 +2536,27 @@ |
result = 0; |
|
if (result) return 0; |
- if (time>>16 != last) // mod 2048 each 16 ms |
+//AO modif |
+ if (time>>8 != last) // mod 2048 each 16 ms |
+//AO modif |
{ |
- last = time >>16; |
- BX_DEBUG_ATA("await_ide: (TIMEOUT,BSY,!BSY,!BSY_DRQ,!BSY_!DRQ,!BSY_RDY) %d time= %ld timeout= %d\n",when_done,time>>11, timeout); |
+//AO modif |
+ last = time >>8; |
+//AO modif |
+//AO modif |
+ BX_DEBUG_ATA("await_ide: (TIMEOUT,BSY,!BSY,!BSY_DRQ,!BSY_!DRQ,!BSY_RDY) %d time= %ld timeout= %d, status= %x\n",when_done,time>>3, timeout, status); |
+//AO modif |
} |
if (status & ATA_CB_STAT_ERR) |
{ |
- BX_DEBUG_ATA("await_ide: ERROR (TIMEOUT,BSY,!BSY,!BSY_DRQ,!BSY_!DRQ,!BSY_RDY) %d time= %ld timeout= %d\n",when_done,time>>11, timeout); |
+//AO modif |
+ BX_DEBUG_ATA("await_ide: ERROR (TIMEOUT,BSY,!BSY,!BSY_DRQ,!BSY_!DRQ,!BSY_RDY) %d time= %ld timeout= %d\n",when_done,time>>3, timeout); |
+//AO modif |
return -1; |
} |
- if ((timeout == 0) || ((time>>11) > timeout)) break; |
+//AO modif |
+ if ((timeout == 0) || ((time>>3) > timeout)) break; |
+//AO modif |
} |
BX_INFO("IDE time out\n"); |
return -1; |
@@ -3099,7 +3115,10 @@ |
current++; |
write_word_DS(&EbdaData->ata.trsfsectors,current); |
count--; |
- if(ioflag == 0) await_ide(NOT_BSY, iobase1, IDE_TIMEOUT); |
+//AO modification start |
+//modif if(ioflag == 0) await_ide(NOT_BSY, iobase1, IDE_TIMEOUT); |
+ await_ide(NOT_BSY, iobase1, IDE_TIMEOUT); |
+//AO modification end |
status = inb(iobase1 + ATA_CB_STAT); |
if(ioflag == 0) |
{ |
diff -ruN bochs-2.6.2/bios/rombios.h bochs-2.6.2-ao486/bios/rombios.h |
--- bochs-2.6.2/bios/rombios.h 2012-11-11 09:11:17.000000000 +0100 |
+++ bochs-2.6.2-ao486/bios/rombios.h 2014-03-30 14:29:31.000000000 +0200 |
@@ -39,10 +39,10 @@ |
#define DEBUG_INT74 0 |
#define DEBUG_APM 0 |
|
-#define PANIC_PORT 0x400 |
-#define PANIC_PORT2 0x401 |
-#define INFO_PORT 0x402 |
-#define DEBUG_PORT 0x403 |
+#define PANIC_PORT 0x8888 //ao 0x400 |
+#define PANIC_PORT2 0x8888 //ao 0x401 |
+#define INFO_PORT 0x8888 //ao 0x402 |
+#define DEBUG_PORT 0x8888 //ao 0x403 |
|
#define BIOS_PRINTF_HALT 1 |
#define BIOS_PRINTF_SCREEN 2 |
@@ -95,19 +95,19 @@ |
#define BX_USE_EBDA 1 |
#define BX_SUPPORT_FLOPPY 1 |
#define BX_FLOPPY_ON_CNT 37 /* 2 seconds */ |
-#define BX_PCIBIOS 1 |
-#define BX_APM 1 |
-#define BX_PNPBIOS 1 |
+#define BX_PCIBIOS 0 //ao |
+#define BX_APM 0 //ao |
+#define BX_PNPBIOS 0 //ao |
/* define it if the (emulated) hardware supports SMM mode */ |
#define BX_USE_SMM |
|
#define BX_USE_ATADRV 1 |
-#define BX_ELTORITO_BOOT 1 |
+#define BX_ELTORITO_BOOT 0 //ao |
|
#define BX_MAX_ATA_INTERFACES 4 |
#define BX_MAX_ATA_DEVICES (BX_MAX_ATA_INTERFACES*2) |
|
-#define BX_VIRTUAL_PORTS 1 /* normal output to Bochs ports */ |
+#define BX_VIRTUAL_PORTS 0 //ao /* normal output to Bochs ports */ |
#define BX_DEBUG_SERIAL 0 /* output to COM1 */ |
|
/* model byte 0xFC = AT */ |
/vgabios-0.7a/vgabios-0.7a.diff
0,0 → 1,23
diff -ruN vgabios-0.7a/Makefile vgabios-0.7a-ao486/Makefile |
--- vgabios-0.7a/Makefile 2011-07-19 18:59:50.000000000 +0200 |
+++ vgabios-0.7a-ao486/Makefile 2014-03-30 14:39:25.000000000 +0200 |
@@ -31,7 +31,8 @@ |
VBE_FILES := vbe.h vbe.c vbetables.h |
|
# build flags |
-vgabios.bin : VGAFLAGS := -DVBE -DPCIBIOS |
+vgabios.bin : VGAFLAGS := |
+#-DVBE -DPCIBIOS |
vgabios.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DDEBUG |
vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS |
vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG |
@@ -43,7 +44,8 @@ |
vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin |
|
# dependencies |
-vgabios.bin : $(VGA_FILES) $(VBE_FILES) biossums |
+vgabios.bin : $(VGA_FILES) biossums |
+#$(VGA_FILES) $(VBE_FILES) biossums |
vgabios.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums |
vgabios-cirrus.bin : $(VGA_FILES) clext.c biossums |
vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums |