OpenCores
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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.