Japanese Hardware

When PCs first appeared on the Japanese market, they represented several different architectural standards, as the following table illustrates. Creating applications for five or six distinct hardware platforms was a headache that software companies had to endure in order to sell a large volume of products. The first major step toward correcting this problem was the introduction of DOS/V (V stands for "VGA") in 1992. Developers could now write applications to a single interface—customized versions of the operating system took care of hardware differences.

Hardware Specification NEC 9800 ISA Bus
Video interrupt INT 0x18 INT 0x10
ROM Basic None INT 0x18
SetCursorLocation INT 0x18 INT 0x10
ReadCursorLocation None INT 0x10
Boot drive Always A: A: or C:
Video resolution 640 x 400 640 x 480

These days, unless you are writing low-level device drivers or accessing hardware directly, you don't need to be concerned with hardware differences on machines sold in Japan. As long as your application takes advantage of the Win32 API, it should run smoothly on different machines. You might have to recompile your application—for example, Windows NT–based applications need to be compiled separately for Intel-based machines and RISC machines—but you will not need to rewrite your code, as developers did before the advent of DOS/V. If you are writing device drivers, you'll need a copy of the Far East Win32 DDK.

It is always a good idea to test your application on local hardware. Since half of the PCs in Japan are made by NEC, definitely test your product on NEC machines. Windows 95 supports both AT-compatible and NEC machines, but it does not support the FM Towns, FMR, or Epson proprietary architectures. Neither does it support 640 x 480 video. Be sure to test your application with other local video resolutions, local keyboards, and local printers.