|
@@ -11,7 +11,7 @@ type
|
|
|
|
|
|
type
|
|
|
GPCKeyMap = packed array[0..127] of boolean;
|
|
|
- FPCKeyMap = array [0..3] of Int32;
|
|
|
+ FPCKeyMap = array [0..15] of byte;
|
|
|
|
|
|
var
|
|
|
km: GPCKeymap;
|
|
@@ -19,9 +19,25 @@ begin
|
|
|
fillchar(km,sizeof(km),0);
|
|
|
km[56] := true;
|
|
|
if (FPCKeyMap(km)[0] <> 0) or
|
|
|
- (FPCKeyMap(km)[1] <> 128) or
|
|
|
+ (FPCKeyMap(km)[1] <> 0) or
|
|
|
(FPCKeyMap(km)[2] <> 0) or
|
|
|
- (FPCKeyMap(km)[3] <> 0) then
|
|
|
+ (FPCKeyMap(km)[3] <> 0) or
|
|
|
+ (FPCKeyMap(km)[4] <> 0) or
|
|
|
+ (FPCKeyMap(km)[5] <> 0) or
|
|
|
+ (FPCKeyMap(km)[6] <> 0) or
|
|
|
+{$ifdef ENDIAN_BIG}
|
|
|
+ (FPCKeyMap(km)[7] <> 128) or
|
|
|
+{$else ENDIAN_BIG}
|
|
|
+ (FPCKeyMap(km)[7] <> 1) or
|
|
|
+{$endif ENDIAN_BIG}
|
|
|
+ (FPCKeyMap(km)[8] <> 0) or
|
|
|
+ (FPCKeyMap(km)[9] <> 0) or
|
|
|
+ (FPCKeyMap(km)[10] <> 0) or
|
|
|
+ (FPCKeyMap(km)[11] <> 0) or
|
|
|
+ (FPCKeyMap(km)[12] <> 0) or
|
|
|
+ (FPCKeyMap(km)[13] <> 0) or
|
|
|
+ (FPCKeyMap(km)[14] <> 0) or
|
|
|
+ (FPCKeyMap(km)[15] <> 0) then
|
|
|
begin
|
|
|
writeln('error');
|
|
|
halt(1);
|