Difference between revisions of "PC-98"

From ReactOS Wiki
Jump to: navigation, search
(More links)
m (Help in testing: small fixes)
(8 intermediate revisions by 3 users not shown)
Line 2: Line 2:
  
 
== Status ==
 
== Status ==
ReactOS is not ported to PC-9800 series yet and here are some rough estimations if you want to port it.
+
ReactOS PC-98 port is under slow development.
  
You can run ReactOS only on [[Supported Hardware/CPU|i586 class CPUs and above]], so that means you can run it on any of the models with a Pentium CPU. Keep in mind ReactOS requires at least 64 MB of RAM. It's recommended to use NEC PC-9821Ra43 with a Celeron CPU @ 433 MHz which is the last model in the series.
+
== Help in testing ==
 +
You can run ReactOS only on [[Supported Hardware/CPU|i586 class CPUs and above]], so that means you can run it on any of the models with a Pentium CPU. Keep in mind ReactOS requires at least 64 MB of RAM. It's recommended to use NEC PC-9821Ra43 with a Celeron CPU @ 433 MHz which is the last model in the series. Currently ReactOS only supports booting from a 1.44 MB 3.5" internal floppy drive. After booting up using the diskette, FreeLoader loads a boot image from any of supported devices: IDE CD-ROM, SCSI CD-ROM or MO.
 +
 
 +
You need the following steps:
 +
* Check out [[ReactOS FAQ#Testing ReactOS on real hardware|this article]] to learn more about the testing process.
 +
* You should be able to [[Building ReactOS|compile ReactOS]].
 +
* Run the following command <code>configure -DSARCH=pc98</code> before compilation to set target platform as PC-98.
 +
* Execute <code>ninja pc98bootfdd</code> build target to create a bootable floppy image. The created image will be placed on <code>/output folder/PC98/</code>.
 +
* Build and burn a LiveCD/BootCD ISO image.
 +
* Insert the floppy disk, medium, and boot ReactOS.
 +
 
 +
Any test results will be useful to improve PC-98 port.
  
 
== Hardware ==
 
== Hardware ==
Line 12: Line 23:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! File Name !! HAL Name
+
! File Name !! Hardware ID String !! HAL Name
 
|-
 
|-
| hal98up.dll || PC-9800 System Clock 10MHz
+
| hal98up.dll || nec98Notmr_up || PC-9800 System Clock 10MHz
 
|-
 
|-
| hal98tmr.dll || PC-9800 System Clock 10MHz (support 2nd Timer)
+
| hal98tmr.dll || nec98tmr_up || PC-9800 System Clock 10MHz (support 2nd Timer)
 
|-
 
|-
| hal98mp.dll || NEC PC-9800 MPS HAL
+
| hal98apc.dll || nec98mps_up || NEC PC-9800 APIC HAL
 
|-
 
|-
| hal98apc.dll || NEC PC-9800 APIC HAL
+
| hal98mp.dll || nec98mps_mp || NEC PC-9800 MPS HAL
 
|}
 
|}
  
Line 26: Line 37:
  
 
== Emulation ==
 
== Emulation ==
Neko Project 21/W is a NEC PC-9821 series emulator which can run Windows 2000. It potentially can be used for ReactOS PC-98 port development and testing.
+
* Neko Project 21/W is a NEC PC-9821 series emulator that can run Windows 2000. It potentially can be used for ReactOS PC-98 port development and testing.
 +
* SL9821 is a NEC PC-9821 series emulator with partial compatibility with Windows 2000 (no sound, no network, IDE issues). ROM image files are required to run SL9821.
 +
* QEMU/9821 also exists, but it seems not maintained anymore and does not run Windows 2000.
 +
* DOSBox-X and MAME can emulate a wide range of PC-98 hardware.  
  
 
== See Also ==
 
== See Also ==
Line 32: Line 46:
 
* [https://www.nicovideo.jp/watch/sm9688577 Windows 2000 booting on NEC PC-9821 RvII26 (SSD, 640 MB RAM)]
 
* [https://www.nicovideo.jp/watch/sm9688577 Windows 2000 booting on NEC PC-9821 RvII26 (SSD, 640 MB RAM)]
 
* [https://www.youtube.com/watch?v=pOlHajhiSLA Linux/98 (Plamo Linux) on NEC PC-9821 V12 (96 MB RAM)]
 
* [https://www.youtube.com/watch?v=pOlHajhiSLA Linux/98 (Plamo Linux) on NEC PC-9821 V12 (96 MB RAM)]
* [https://sites.google.com/site/np21win Neko Project 21/W (japanese)]
+
* [https://sites.google.com/site/np21win Neko Project 21/W (in Japanese)]
* [https://sites.google.com/site/np21win/setup/win2000 Neko Project 21/W - Windows 2000 installation guide (japanese)]
+
* [https://sites.google.com/site/np21win/setup/win2000 Neko Project 21/W - Windows 2000 installation guide (in Japanese)]
 +
* [http://www.satotomi.com/sl9821 SL9821 (in Japanese)]
 +
* [https://www.emucr.com/2012/08/qemu9821-for-windows20120820.html QEMU/9821 for Windows (2012/08/20)]
 +
* [https://www.betaarchive.com/forum/viewtopic.php?t=27185 ROMs for QEMU/9821]
 +
* [https://github.com/joncampbell123/dosbox-x DOSBox-X]
 +
* [https://github.com/mamedev/mame MAME]
 
* [https://github.com/joncampbell123/dosbox-x/issues/106#issuecomment-132394519 Overview of PC-98 hardware and BIOS architecture]
 
* [https://github.com/joncampbell123/dosbox-x/issues/106#issuecomment-132394519 Overview of PC-98 hardware and BIOS architecture]
 +
* [https://gist.github.com/tomari/3793102 Example output of the lspci command], [https://www.mail-archive.com/freebsd-users-jp@jp.freebsd.org/msg04032.html and another one (pciconf)]
 
* [https://github.com/lpproj/fdkernel/tree/nec98test/nec98 FreeDOS(98) kernel source code]
 
* [https://github.com/lpproj/fdkernel/tree/nec98test/nec98 FreeDOS(98) kernel source code]
 
* [https://www.betaarchive.com/forum/viewtopic.php?f=61&t=35758 Discussion on BetaArchive]
 
* [https://www.betaarchive.com/forum/viewtopic.php?f=61&t=35758 Discussion on BetaArchive]

Revision as of 12:11, 10 March 2020

The NEC PC-9800 series are 16/32-bit computers from NEC Corporation. It marked a shift away from the Z80-based PC-88 to the x86 architecture. Just like their predecessor series, they were known for their unique sound hardware by YAMAHA, and games kept the systems popular. They were likely never released outside Japan in the series lifespan, except for the APC III.

Status

ReactOS PC-98 port is under slow development.

Help in testing

You can run ReactOS only on i586 class CPUs and above, so that means you can run it on any of the models with a Pentium CPU. Keep in mind ReactOS requires at least 64 MB of RAM. It's recommended to use NEC PC-9821Ra43 with a Celeron CPU @ 433 MHz which is the last model in the series. Currently ReactOS only supports booting from a 1.44 MB 3.5" internal floppy drive. After booting up using the diskette, FreeLoader loads a boot image from any of supported devices: IDE CD-ROM, SCSI CD-ROM or MO.

You need the following steps:

  • Check out this article to learn more about the testing process.
  • You should be able to compile ReactOS.
  • Run the following command configure -DSARCH=pc98 before compilation to set target platform as PC-98.
  • Execute ninja pc98bootfdd build target to create a bootable floppy image. The created image will be placed on /output folder/PC98/.
  • Build and burn a LiveCD/BootCD ISO image.
  • Insert the floppy disk, medium, and boot ReactOS.

Any test results will be useful to improve PC-98 port.

Hardware

The PC-9800 series use a custom hardware C-bus (later models do use PCI) and a firmware that is completely different from a Standard PC BIOS, so a new HAL should be created.

In Windows 2000 there are four known HALs for this platform:

File Name Hardware ID String HAL Name
hal98up.dll nec98Notmr_up PC-9800 System Clock 10MHz
hal98tmr.dll nec98tmr_up PC-9800 System Clock 10MHz (support 2nd Timer)
hal98apc.dll nec98mps_up NEC PC-9800 APIC HAL
hal98mp.dll nec98mps_mp NEC PC-9800 MPS HAL

PC-9800 series hard disks are usually formatted with FAT12, but they use 1024 bytes per sector as opposed to the PC's 512.

Emulation

  • Neko Project 21/W is a NEC PC-9821 series emulator that can run Windows 2000. It potentially can be used for ReactOS PC-98 port development and testing.
  • SL9821 is a NEC PC-9821 series emulator with partial compatibility with Windows 2000 (no sound, no network, IDE issues). ROM image files are required to run SL9821.
  • QEMU/9821 also exists, but it seems not maintained anymore and does not run Windows 2000.
  • DOSBox-X and MAME can emulate a wide range of PC-98 hardware.

See Also

ReactOS ports‎
In active development Intel IA-32 (x86) | AMD64 (x64)
In slow development ARM64 (aarch64) | ARM32 (armv7) | NEC PC-98 (x86) | OG Xbox (x86) | Apple TV (1st generation) (x86)
Unmaintained OLPC (x86)
Missing ports that Windows has Intel IA-64 (Itanium) | IBM PS/2 MCA (x86) | SGI 320/540 (x86) | DEC Alpha (axp) | MIPS | PowerPC (ppc)
Ideas for new ports FM Towns (x86) | PlayStation 4 (x64) | Intel SFI (x86)