[FREELDR] Fix typos and PC-98 boot (#2564)
authorDmitry Borisov <di.sean@protonmail.com>
Fri, 17 Apr 2020 18:27:20 +0000 (00:27 +0600)
committerGitHub <noreply@github.com>
Fri, 17 Apr 2020 18:27:20 +0000 (20:27 +0200)
- INT 18h, AH=A0h doesn't exist, it was meant to be AH=0Ah. Thanks to SimK (@simk98l) on twitter for bug reporting and fix.
- Adress -> Address.

boot/freeldr/freeldr/arch/i386/pc98/pc98video.c
sdk/include/reactos/drivers/pc98/video.h

index a920382..7f038a0 100644 (file)
@@ -117,7 +117,7 @@ Pc98VideoInit(VOID)
     for (i = 0; i < RTL_NUMBER_OF(CgaPalette); i++)
         Pc98VideoSetPaletteColor(i, CgaPalette[i].Red, CgaPalette[i].Green, CgaPalette[i].Blue);
 
-    /* Int 18h AH=A0h
+    /* Int 18h AH=0Ah
      * CRT BIOS - Set text screen mode
      *
      * AL0 - text rows
@@ -137,7 +137,7 @@ Pc98VideoInit(VOID)
      * High-resolution machine:
      * AL4 - text rows, AL3 - KCG access mode
      */
-    Regs.b.ah = 0xA0;
+    Regs.b.ah = 0x0A;
     Regs.b.al = HiResoMachine ? 0x10 : 0x00;
     Int386(0x18, &Regs, &Regs); /* 80x25(31) */
 
@@ -208,7 +208,7 @@ Pc98VideoSetTextCursorPosition(UCHAR X, UCHAR Y)
     CSRWPARAM CursorParameters;
 
     RtlZeroMemory(&CursorParameters, sizeof(CSRWPARAM));
-    CursorParameters.CursorAdress = X + Y * TextCols;
+    CursorParameters.CursorAddress = X + Y * TextCols;
     CursorParameters.DotAddress = 0;
 
     WRITE_PORT_UCHAR((PUCHAR)GDC1_IO_o_COMMAND, GDC_COMMAND_CSRW);
index 42132f3..c55211d 100644 (file)
@@ -89,7 +89,7 @@ WRITE_GDC_CSRFORM(PUCHAR Port, PCSRFORMPARAM CursorParameters)
 #define GDC_COMMAND_CSRW          0x49
 typedef struct _CSRWPARAM
 {
-    ULONG CursorAdress;
+    ULONG CursorAddress;
     UCHAR DotAddress;
 } CSRWPARAM, *PCSRWPARAM;
 
@@ -97,13 +97,13 @@ FORCEINLINE
 VOID
 WRITE_GDC_CSRW(PUCHAR Port, PCSRWPARAM CursorParameters)
 {
-    ASSERT(CursorParameters->CursorAdress < 0xF00000);
+    ASSERT(CursorParameters->CursorAddress < 0xF00000);
     ASSERT(CursorParameters->DotAddress < 0x10);
 
-    WRITE_PORT_UCHAR(Port, CursorParameters->CursorAdress & 0xFF);
-    WRITE_PORT_UCHAR(Port, (CursorParameters->CursorAdress >> 8) & 0xFF);
+    WRITE_PORT_UCHAR(Port, CursorParameters->CursorAddress & 0xFF);
+    WRITE_PORT_UCHAR(Port, (CursorParameters->CursorAddress >> 8) & 0xFF);
     WRITE_PORT_UCHAR(Port, (CursorParameters->DotAddress << 4) |
-                     ((CursorParameters->CursorAdress >> 16) & 0x03));
+                     ((CursorParameters->CursorAddress >> 16) & 0x03));
 }
 
 #define GDC_COMMAND_PRAM          0x70