Author: arty
Date: Mon Jan 8 12:30:17 2007
New Revision: 25376
URL:
http://svn.reactos.org/svn/reactos?rev=25376&view=rev
Log:
HAL display implementation based on openfirmware framebuffer.
Modified:
branches/powerpc/reactos/hal/halppc/generic/display.c
branches/powerpc/reactos/hal/halppc/generic/generic.rbuild
Modified: branches/powerpc/reactos/hal/halppc/generic/display.c
URL:
http://svn.reactos.org/svn/reactos/branches/powerpc/reactos/hal/halppc/gene…
==============================================================================
--- branches/powerpc/reactos/hal/halppc/generic/display.c (original)
+++ branches/powerpc/reactos/hal/halppc/generic/display.c Mon Jan 8 12:30:17 2007
@@ -122,58 +122,15 @@
*/
#include <hal.h>
+#include <ppcboot.h>
#define NDEBUG
#include <debug.h>
+#include "font.h"
+boot_infos_t PpcEarlybootInfo;
+BOOLEAN PPCGetEEBit();
#define SCREEN_SYNCHRONIZATION
-
-#define VGA_GRAPH_MEM 0xa0000
-#define VGA_CHAR_MEM 0xb8000
-#define VGA_END_MEM 0xbffff
-
-#define VGA_AC_INDEX 0x3c0
-#define VGA_AC_READ 0x3c1
-#define VGA_AC_WRITE 0x3c0
-
-#define VGA_MISC_WRITE 0x3c2
-
-#define VGA_SEQ_INDEX 0x3c4
-#define VGA_SEQ_DATA 0x3c5
-
-#define VGA_DAC_MASK 0x3c6
-#define VGA_DAC_READ_INDEX 0x3c7
-#define VGA_DAC_WRITE_INDEX 0x3c8
-#define VGA_DAC_DATA 0x3c9
-#define VGA_FEATURE_READ 0x3ca
-#define VGA_MISC_READ 0x3cc
-
-#define VGA_GC_INDEX 0x3ce
-#define VGA_GC_DATA 0x3cf
-
-#define VGA_CRTC_INDEX 0x3d4
-#define VGA_CRTC_DATA 0x3d5
-
-#define VGA_INSTAT_READ 0x3da
-
-#define VGA_SEQ_NUM_REGISTERS 5
-#define VGA_CRTC_NUM_REGISTERS 25
-#define VGA_GC_NUM_REGISTERS 9
-#define VGA_AC_NUM_REGISTERS 21
-
-#define CRTC_COLUMNS 0x01
-#define CRTC_OVERFLOW 0x07
-#define CRTC_ROWS 0x12
-#define CRTC_SCANLINES 0x09
-
-#define CRTC_CURHI 0x0e
-#define CRTC_CURLO 0x0f
-
-
-#define CHAR_ATTRIBUTE_BLACK 0x00 /* black on black */
-#define CHAR_ATTRIBUTE 0x17 /* grey on blue */
-
-#define FONT_AMOUNT (8*8192)
/* VARIABLES ****************************************************************/
@@ -184,34 +141,27 @@
static BOOLEAN DisplayInitialized = FALSE;
static BOOLEAN HalOwnsDisplay = TRUE;
-
-static PUSHORT VideoBuffer = NULL;
-static PUCHAR GraphVideoBuffer = NULL;
-
+static ULONG GraphVideoBuffer = 0;
static PHAL_RESET_DISPLAY_PARAMETERS HalResetDisplayParameters = NULL;
-static UCHAR SavedTextPalette[768];
-static UCHAR SavedTextMiscOutReg;
-static UCHAR SavedTextCrtcReg[VGA_CRTC_NUM_REGISTERS];
-static UCHAR SavedTextAcReg[VGA_AC_NUM_REGISTERS];
-static UCHAR SavedTextGcReg[VGA_GC_NUM_REGISTERS];
-static UCHAR SavedTextSeqReg[VGA_SEQ_NUM_REGISTERS];
-static UCHAR SavedTextFont[2][FONT_AMOUNT];
-static BOOLEAN TextPaletteEnabled = FALSE;
+extern UCHAR XboxFont8x16[];
+extern void SetPhys( ULONG Addr, ULONG Data );
+extern void SetPhysByte( ULONG Addr, ULONG Data );
/* PRIVATE FUNCTIONS *********************************************************/
VOID FASTCALL
HalClearDisplay (UCHAR CharAttribute)
{
- WORD *ptr = (WORD*)VideoBuffer;
ULONG i;
-
- for (i = 0; i < SizeX * SizeY; i++, ptr++)
- *ptr = ((CharAttribute << 8) + ' ');
-
- CursorX = 0;
- CursorY = 0;
+ ULONG deviceSize =
+ PpcEarlybootInfo.dispDeviceRowBytes * PpcEarlybootInfo.dispDeviceDepth *
+ PpcEarlybootInfo.dispDeviceRect[3];
+ for(i = 0; i < deviceSize; i += sizeof(int) )
+ SetPhys(GraphVideoBuffer + i, CharAttribute);
+
+ CursorX = 0;
+ CursorY = 0;
}
@@ -220,352 +170,38 @@
VOID STATIC
HalScrollDisplay (VOID)
{
- PUSHORT ptr;
- int i;
-
- ptr = VideoBuffer + SizeX;
- RtlMoveMemory(VideoBuffer,
- ptr,
- SizeX * (SizeY - 1) * 2);
-
- ptr = VideoBuffer + (SizeX * (SizeY - 1));
- for (i = 0; i < (int)SizeX; i++, ptr++)
+ PULONG Dest = (PULONG)GraphVideoBuffer,
+ Src = (PULONG)(GraphVideoBuffer + (16 * PpcEarlybootInfo.dispDeviceRowBytes));
+ PULONG End = (PULONG)
+ GraphVideoBuffer +
+ (PpcEarlybootInfo.dispDeviceRowBytes * PpcEarlybootInfo.dispDeviceDepth *
+ PpcEarlybootInfo.dispDeviceRect[3]);
+
+ for( ; Src < End; Src += sizeof(int) )
{
- *ptr = (CHAR_ATTRIBUTE << 8) + ' ';
+ *Dest++ = *Src++;
}
}
VOID STATIC FASTCALL
HalPutCharacter (CHAR Character)
{
- PUSHORT ptr;
-
- ptr = VideoBuffer + ((CursorY * SizeX) + CursorX);
- *ptr = (CHAR_ATTRIBUTE << 8) + Character;
-}
-
-VOID STATIC
-HalDisablePalette(VOID)
-{
- (VOID)READ_PORT_UCHAR((PUCHAR)VGA_INSTAT_READ);
- WRITE_PORT_UCHAR((PUCHAR)VGA_AC_INDEX, 0x20);
- TextPaletteEnabled = FALSE;
-}
-
-VOID STATIC
-HalEnablePalette(VOID)
-{
- (VOID)READ_PORT_UCHAR((PUCHAR)VGA_INSTAT_READ);
- WRITE_PORT_UCHAR((PUCHAR)VGA_AC_INDEX, 0x00);
- TextPaletteEnabled = TRUE;
-}
-
-UCHAR STATIC FASTCALL
-HalReadGc(ULONG Index)
-{
- WRITE_PORT_UCHAR((PUCHAR)VGA_GC_INDEX, (UCHAR)Index);
- return(READ_PORT_UCHAR((PUCHAR)VGA_GC_DATA));
-}
-
-VOID STATIC FASTCALL
-HalWriteGc(ULONG Index, UCHAR Value)
-{
- WRITE_PORT_UCHAR((PUCHAR)VGA_GC_INDEX, (UCHAR)Index);
- WRITE_PORT_UCHAR((PUCHAR)VGA_GC_DATA, Value);
-}
-
-UCHAR STATIC FASTCALL
-HalReadSeq(ULONG Index)
-{
- WRITE_PORT_UCHAR((PUCHAR)VGA_SEQ_INDEX, (UCHAR)Index);
- return(READ_PORT_UCHAR((PUCHAR)VGA_SEQ_DATA));
-}
-
-VOID STATIC FASTCALL
-HalWriteSeq(ULONG Index, UCHAR Value)
-{
- WRITE_PORT_UCHAR((PUCHAR)VGA_SEQ_INDEX, (UCHAR)Index);
- WRITE_PORT_UCHAR((PUCHAR)VGA_SEQ_DATA, Value);
-}
-
-VOID STATIC FASTCALL
-HalWriteAc(ULONG Index, UCHAR Value)
-{
- if (TextPaletteEnabled)
- {
- Index &= ~0x20;
- }
- else
- {
- Index |= 0x20;
- }
- (VOID)READ_PORT_UCHAR((PUCHAR)VGA_INSTAT_READ);
- WRITE_PORT_UCHAR((PUCHAR)VGA_AC_INDEX, (UCHAR)Index);
- WRITE_PORT_UCHAR((PUCHAR)VGA_AC_WRITE, Value);
-}
-
-UCHAR STATIC FASTCALL
-HalReadAc(ULONG Index)
-{
- if (TextPaletteEnabled)
- {
- Index &= ~0x20;
- }
- else
- {
- Index |= 0x20;
- }
- (VOID)READ_PORT_UCHAR((PUCHAR)VGA_INSTAT_READ);
- WRITE_PORT_UCHAR((PUCHAR)VGA_AC_INDEX, (UCHAR)Index);
- return(READ_PORT_UCHAR((PUCHAR)VGA_AC_READ));
-}
-
-VOID STATIC FASTCALL
-HalWriteCrtc(ULONG Index, UCHAR Value)
-{
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, (UCHAR)Index);
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA, Value);
-}
-
-UCHAR STATIC FASTCALL
-HalReadCrtc(ULONG Index)
-{
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, (UCHAR)Index);
- return(READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA));
-}
-
-VOID STATIC FASTCALL
-HalResetSeq(BOOLEAN Start)
-{
- if (Start)
- {
- HalWriteSeq(0x00, 0x01);
- }
- else
- {
- HalWriteSeq(0x00, 0x03);
- }
-}
-
-VOID STATIC FASTCALL
-HalBlankScreen(BOOLEAN On)
-{
- UCHAR Scrn;
-
- Scrn = HalReadSeq(0x01);
-
- if (On)
- {
- Scrn &= ~0x20;
- }
- else
- {
- Scrn |= 0x20;
- }
-
- HalResetSeq(TRUE);
- HalWriteSeq(0x01, Scrn);
- HalResetSeq(FALSE);
-}
-
-VOID STATIC
-HalSaveFont(VOID)
-{
- UCHAR Attr10;
- UCHAR MiscOut, Gc4, Gc5, Gc6, Seq2, Seq4;
- ULONG i;
-
- /* Check if we are already in graphics mode. */
- Attr10 = HalReadAc(0x10);
- if (Attr10 & 0x01)
- {
- return;
- }
-
- /* Save registers. */
- MiscOut = READ_PORT_UCHAR((PUCHAR)VGA_MISC_READ);
- Gc4 = HalReadGc(0x04);
- Gc5 = HalReadGc(0x05);
- Gc6 = HalReadGc(0x06);
- Seq2 = HalReadSeq(0x02);
- Seq4 = HalReadSeq(0x04);
-
- /* Force colour mode. */
- WRITE_PORT_UCHAR((PUCHAR)VGA_MISC_WRITE, (UCHAR)(MiscOut | 0x01));
-
- HalBlankScreen(FALSE);
-
- for (i = 0; i < 2; i++)
- {
- /* Save font 1 */
- HalWriteSeq(0x02, (UCHAR)(0x04 << i)); /* Write to plane 2 or 3 */
- HalWriteSeq(0x04, 0x06); /* Enable plane graphics. */
- HalWriteGc(0x04, (UCHAR)(0x02 + i)); /* Read plane 2 or 3 */
- HalWriteGc(0x05, 0x00); /* Write mode 0; read mode 0 */
- HalWriteGc(0x06, 0x05); /* Set graphics. */
- memcpy(SavedTextFont[i], GraphVideoBuffer, FONT_AMOUNT);
- }
-
- /* Restore registers. */
- HalWriteAc(0x10, Attr10);
- HalWriteSeq(0x02, Seq2);
- HalWriteSeq(0x04, Seq4);
- HalWriteGc(0x04, Gc4);
- HalWriteGc(0x05, Gc5);
- HalWriteGc(0x06, Gc6);
- WRITE_PORT_UCHAR((PUCHAR)VGA_MISC_WRITE, MiscOut);
-
- HalBlankScreen(TRUE);
-}
-
-VOID STATIC
-HalSaveMode(VOID)
-{
- ULONG i;
-
- SavedTextMiscOutReg = READ_PORT_UCHAR((PUCHAR)VGA_MISC_READ);
-
- for (i = 0; i < VGA_CRTC_NUM_REGISTERS; i++)
- {
- SavedTextCrtcReg[i] = HalReadCrtc(i);
- }
-
- HalEnablePalette();
- for (i = 0; i < VGA_AC_NUM_REGISTERS; i++)
- {
- SavedTextAcReg[i] = HalReadAc(i);
- }
- HalDisablePalette();
-
- for (i = 0; i < VGA_GC_NUM_REGISTERS; i++)
- {
- SavedTextGcReg[i] = HalReadGc(i);
- }
-
- for (i = 0; i < VGA_SEQ_NUM_REGISTERS; i++)
- {
- SavedTextSeqReg[i] = HalReadSeq(i);
- }
-}
-
-VOID STATIC
-HalDacDelay(VOID)
-{
- (VOID)READ_PORT_UCHAR((PUCHAR)VGA_INSTAT_READ);
- (VOID)READ_PORT_UCHAR((PUCHAR)VGA_INSTAT_READ);
-}
-
-VOID STATIC
-HalSavePalette(VOID)
-{
- ULONG i;
- WRITE_PORT_UCHAR((PUCHAR)VGA_DAC_MASK, 0xFF);
- WRITE_PORT_UCHAR((PUCHAR)VGA_DAC_READ_INDEX, 0x00);
- for (i = 0; i < 768; i++)
- {
- SavedTextPalette[i] = READ_PORT_UCHAR((PUCHAR)VGA_DAC_DATA);
- HalDacDelay();
- }
-}
-
-VOID STATIC
-HalRestoreFont(VOID)
-{
- UCHAR MiscOut, Attr10, Gc1, Gc3, Gc4, Gc5, Gc6, Gc8;
- UCHAR Seq2, Seq4;
- ULONG i;
-
- /* Save registers. */
- MiscOut = READ_PORT_UCHAR((PUCHAR)VGA_MISC_READ);
- Attr10 = HalReadAc(0x10);
- Gc1 = HalReadGc(0x01);
- Gc3 = HalReadGc(0x03);
- Gc4 = HalReadGc(0x04);
- Gc5 = HalReadGc(0x05);
- Gc6 = HalReadGc(0x06);
- Gc8 = HalReadGc(0x08);
- Seq2 = HalReadSeq(0x02);
- Seq4 = HalReadSeq(0x04);
-
- /* Force into colour mode. */
- WRITE_PORT_UCHAR((PUCHAR)VGA_MISC_WRITE, (UCHAR)(MiscOut | 0x10));
-
- HalBlankScreen(FALSE);
-
- HalWriteGc(0x03, 0x00); /* Don't rotate; write unmodified. */
- HalWriteGc(0x08, 0xFF); /* Write all bits. */
- HalWriteGc(0x01, 0x00); /* All planes from CPU. */
-
- for (i = 0; i < 2; i++)
- {
- HalWriteSeq(0x02, (UCHAR)(0x04 << i)); /* Write to plane 2 or 3 */
- HalWriteSeq(0x04, 0x06); /* Enable plane graphics. */
- HalWriteGc(0x04, (UCHAR)(0x02 + i)); /* Read plane 2 or 3 */
- HalWriteGc(0x05, 0x00); /* Write mode 0; read mode 0. */
- HalWriteGc(0x06, 0x05); /* Set graphics. */
- memcpy(GraphVideoBuffer, SavedTextFont[i], FONT_AMOUNT);
- }
-
- HalBlankScreen(TRUE);
-
- /* Restore registers. */
- WRITE_PORT_UCHAR((PUCHAR)VGA_MISC_WRITE, MiscOut);
- HalWriteAc(0x10, Attr10);
- HalWriteGc(0x01, Gc1);
- HalWriteGc(0x03, Gc3);
- HalWriteGc(0x04, Gc4);
- HalWriteGc(0x05, Gc5);
- HalWriteGc(0x06, Gc6);
- HalWriteGc(0x08, Gc8);
- HalWriteSeq(0x02, Seq2);
- HalWriteSeq(0x04, Seq4);
-}
-
-VOID STATIC
-HalRestoreMode(VOID)
-{
- ULONG i;
-
- WRITE_PORT_UCHAR((PUCHAR)VGA_MISC_WRITE, SavedTextMiscOutReg);
-
- for (i = 1; i < VGA_SEQ_NUM_REGISTERS; i++)
- {
- HalWriteSeq(i, SavedTextSeqReg[i]);
- }
-
- /* Unlock CRTC registers 0-7 */
- HalWriteCrtc(17, (UCHAR)(SavedTextCrtcReg[17] & ~0x80));
-
- for (i = 0; i < VGA_CRTC_NUM_REGISTERS; i++)
- {
- HalWriteCrtc(i, SavedTextCrtcReg[i]);
- }
-
- for (i = 0; i < VGA_GC_NUM_REGISTERS; i++)
- {
- HalWriteGc(i, SavedTextGcReg[i]);
- }
-
- HalEnablePalette();
- for (i = 0; i < VGA_AC_NUM_REGISTERS; i++)
- {
- HalWriteAc(i, SavedTextAcReg[i]);
- }
- HalDisablePalette();
-}
-
-VOID STATIC
-HalRestorePalette(VOID)
-{
- ULONG i;
- WRITE_PORT_UCHAR((PUCHAR)VGA_DAC_MASK, 0xFF);
- WRITE_PORT_UCHAR((PUCHAR)VGA_DAC_WRITE_INDEX, 0x00);
- for (i = 0; i < 768; i++)
- {
- WRITE_PORT_UCHAR((PUCHAR)VGA_DAC_DATA, SavedTextPalette[i]);
- HalDacDelay();
- }
- HalDisablePalette();
+ int i,j,k;
+ PCHAR Dest = (PCHAR)
+ (GraphVideoBuffer +
+ (16 * PpcEarlybootInfo.dispDeviceRowBytes * CursorY) +
+ ((PpcEarlybootInfo.dispDeviceDepth / 8) * CursorX));
+
+ for( i = 0; i < 16; i++ ) {
+ for( j = 0; j < 8; j++ ) {
+ for( k = 0; k < PpcEarlybootInfo.dispDeviceDepth / 8; k++ ) {
+ SetPhysByte
+ ((ULONG)(Dest + (j * PpcEarlybootInfo.dispDeviceDepth) + k),
+ ((1 << j) & (XboxFont8x16[(16 * Character) + i]) ? 0xff : 1));
+ }
+ }
+ Dest += PpcEarlybootInfo.dispDeviceRowBytes;
+ }
}
/* PRIVATE FUNCTIONS ********************************************************/
@@ -578,55 +214,27 @@
* InitParameters = Parameters setup by the boot loader
*/
{
- PHYSICAL_ADDRESS PhysBuffer;
+ __asm__("mr 20, %0\n\t"
+ "mr 21, %0\n\t"
+ "nop" :
+ :
+ "r" (DisplayInitialized),
+ "r" (&GraphVideoBuffer) :
+ "r20", "r21");
if (! DisplayInitialized)
{
- ULONG ScanLines;
- ULONG Data;
-
- PhysBuffer.u.HighPart = 0;
- PhysBuffer.u.LowPart = VGA_GRAPH_MEM;
- GraphVideoBuffer = MmMapIoSpace(PhysBuffer, VGA_END_MEM - VGA_GRAPH_MEM + 1,
MmNonCached);
- if (NULL == GraphVideoBuffer)
- {
- return;
- }
- VideoBuffer = (PUSHORT) (GraphVideoBuffer + (VGA_CHAR_MEM - VGA_GRAPH_MEM));
+ boot_infos_t *XBootInfo = (boot_infos_t *)LoaderBlock->ArchExtra;
+ GraphVideoBuffer = (ULONG)XBootInfo->dispDeviceBase;
+ memcpy(&PpcEarlybootInfo, XBootInfo, sizeof(*XBootInfo));
/* Set cursor position */
-// CursorX = LoaderBlock->cursorx;
-// CursorY = LoaderBlock->cursory;
CursorX = 0;
CursorY = 0;
- /* read screen size from the crtc */
- /* FIXME: screen size should be read from the boot parameters */
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_COLUMNS);
- SizeX = READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA) + 1;
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_ROWS);
- SizeY = READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA);
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_OVERFLOW);
- Data = READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA);
- SizeY |= (((Data & 0x02) << 7) | ((Data & 0x40) << 3));
- SizeY++;
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_SCANLINES);
- ScanLines = (READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA) & 0x1F) + 1;
- SizeY = SizeY / ScanLines;
-
-#ifdef BOCHS_30ROWS
- SizeY=30;
-#endif
- HalClearDisplay(CHAR_ATTRIBUTE_BLACK);
+ HalClearDisplay(1);
DisplayInitialized = TRUE;
-
- /*
- Save the VGA state at this point so we can restore it on a bugcheck.
- */
- HalSavePalette();
- HalSaveMode();
- HalSaveFont();
}
}
@@ -645,14 +253,8 @@
if (HalOwnsDisplay == TRUE)
return;
- if (!HalResetDisplayParameters(SizeX, SizeY))
- {
- HalRestoreMode();
- HalRestoreFont();
- HalRestorePalette();
- }
HalOwnsDisplay = TRUE;
- HalClearDisplay(CHAR_ATTRIBUTE);
+ HalClearDisplay(0);
}
@@ -681,12 +283,9 @@
*/
{
PCH pch;
-#ifdef SCREEN_SYNCHRONIZATION
- int offset;
-#endif
static KSPIN_LOCK Lock;
KIRQL OldIrql;
- ULONG Flags;
+ BOOLEAN InterruptsEnabled = PPCGetEEBit();
/* See comment at top of file */
if (! HalOwnsDisplay || ! DisplayInitialized)
@@ -699,18 +298,7 @@
OldIrql = KfRaiseIrql(HIGH_LEVEL);
KiAcquireSpinLock(&Lock);
- Ki386SaveFlags(Flags);
- Ki386DisableInterrupts();
-
-#ifdef SCREEN_SYNCHRONIZATION
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_CURHI);
- offset = READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA)<<8;
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_CURLO);
- offset += READ_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA);
-
- CursorY = offset / SizeX;
- CursorX = offset % SizeX;
-#endif
+ _disable();
while (*pch != 0)
{
@@ -747,15 +335,8 @@
pch++;
}
-#ifdef SCREEN_SYNCHRONIZATION
- offset = (CursorY * SizeX) + CursorX;
-
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_CURLO);
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA, (UCHAR)(offset & 0xff));
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_INDEX, CRTC_CURHI);
- WRITE_PORT_UCHAR((PUCHAR)VGA_CRTC_DATA, (UCHAR)((offset >> 8) & 0xff));
-#endif
- Ki386RestoreFlags(Flags);
+ if(InterruptsEnabled)
+ _enable();
KiReleaseSpinLock(&Lock);
KfLowerIrql(OldIrql);
Modified: branches/powerpc/reactos/hal/halppc/generic/generic.rbuild
URL:
http://svn.reactos.org/svn/reactos/branches/powerpc/reactos/hal/halppc/gene…
==============================================================================
--- branches/powerpc/reactos/hal/halppc/generic/generic.rbuild (original)
+++ branches/powerpc/reactos/hal/halppc/generic/generic.rbuild Mon Jan 8 12:30:17 2007
@@ -6,17 +6,21 @@
<define name="_NTHAL_" />
<file>beep.c</file>
<file>bus.c</file>
+ <file>display.c</file>
<file>dma.c</file>
<file>drive.c</file>
<file>enum.c</file>
<file>fmutex.c</file>
+ <file>font.c</file>
<file>halinit.c</file>
+ <file>irql.c</file>
<file>isa.c</file>
<file>kdbg.c</file>
<file>mca.c</file>
<file>misc.c</file>
<file>pci.c</file>
<file>portio.c</file>
+ <file>processor.c</file>
<file>reboot.c</file>
<file>sysbus.c</file>
<file>sysinfo.c</file>