PCで次のコードを実行しようとしました。PORT 0x378(LPT1データ)を使用すると、正常に動作します。ただし、PORT 0x379(LPT1ステータス)では、前の行で何を出力しても、常に126が返されます。0x37Aも機能します。私はWindowsXPを持っています
#define PORT 0x379
#define DATA 255
int main(int argc, char *argv[])
{
Input input;
Output output;
HINSTANCE hInstLib = LoadLibrary(TEXT("inpout32.dll"));
if (!hInstLib)
{
printf("No dll.\n");
system("PAUSE");
return 1;
}
input = (Input)GetProcAddress(hInstLib, "Inp32");
output = (Output)GetProcAddress(hInstLib, "Out32");
if (!input || !output)
{
printf("No funcion.\n");
FreeLibrary(hInstLib);
system("PAUSE");
return 1;
}
output(PORT, DATA);
printf("status: %i\n", input(PORT));
FreeLibrary(hInstLib);
system("PAUSE");
return EXIT_SUCCESS;
}