Răsfoiți Sursa

use WORD instead of LONGINT for result type
finished merging draft patch result type for main source tree without
ARM folder
Oberon subsystem
Mediaplayer.Mod WMPlayer.Mod
SSFS.Mod
Windows.UDP.Mod

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@8476 8c9fc860-2736-0410-a75d-ab315db34111

eth.metacore 6 ani în urmă
părinte
comite
0743f64c5d

+ 2 - 2
source/AMD64.UsbKeyboard.Mod

@@ -486,7 +486,7 @@ END UsbScanTab;
 
 (* Maps USB key code to X11 keysym (/usr/include/X11/keysymdef.h). *)
 PROCEDURE KeySym*(VAR ch : CHAR; VAR leds : SET): LONGINT;
-VAR res: WORD;
+VAR res: LONGINT;
 BEGIN
 	CASE ch OF
 		028X: res := Inputs.KsReturn (* Return *)
@@ -557,7 +557,7 @@ BEGIN
 END KeySym;
 
 PROCEDURE GetModifierKeysym(modifier : LONGINT) : LONGINT;
-VAR res : WORD;
+VAR res: LONGINT;
 BEGIN
 	CASE modifier OF
 		|Inputs.LeftCtrl: res := Inputs.KsControlL;

+ 1 - 1
source/BIOS.AM79C970.Mod

@@ -517,7 +517,7 @@ TYPE
 (* Scan the PCI bus for the specified card. *)
 PROCEDURE ScanPCI(vendor, device: LONGINT);
 VAR
-	index, bus, dev, fct, res, base, irq, i: LONGINT;
+	index, bus, dev, fct, base, irq, i: LONGINT; res: WORD;
 	d: LinkDevice;
 	c: Controller;
 	name: Plugins.Name;

+ 32 - 32
source/BIOS.ATADisks.Mod

@@ -320,7 +320,7 @@ TYPE
 			RETURN res;
 		END ExecuteCommand;
 
-		PROCEDURE Reset(): LONGINT;
+		PROCEDURE Reset(): WORD;
 		BEGIN {EXCLUSIVE}
 			RETURN ProtSwReset(ResetTimeout);
 		END Reset;
@@ -386,7 +386,7 @@ TYPE
 			RETURN Res_OK;
 		END SetupPRD;
 
-		PROCEDURE SetupDMA(command: Command): LONGINT;
+		PROCEDURE SetupDMA(command: Command): WORD;
 		VAR
 			ch: CHAR;
 			s: SET;
@@ -456,7 +456,7 @@ TYPE
 
 		(*	Software reset protocol
 			States: HSR0(ISet_SRST), HSR1 (Clear_wait), HSR2 (Check_Status) *)
-		PROCEDURE ProtSwReset(ms: LONGINT): LONGINT;
+		PROCEDURE ProtSwReset(ms: LONGINT): WORD;
 		VAR
 			t: Kernel.MilliTimer;
 			status: SET;
@@ -477,7 +477,7 @@ TYPE
 
 		(*	Bus idle protocol
 			States: HI0(Host_Idle), HI1 (Check_Status), HI2 (Device_Select), HI3 (Write_parameters), HI4(Write_command) *)
-		PROCEDURE ProtIssueCommand(cmd: Command; ms: LONGINT): LONGINT;
+		PROCEDURE ProtIssueCommand(cmd: Command; ms: LONGINT): WORD;
 		VAR
 			cmdCHS: CommandCHS;
 			cmdLBA: CommandLBA;
@@ -747,7 +747,7 @@ TYPE
 
 		(*	Packet DMA Protocol
 			States: HPD0(Check_Status_A), HPD1 (Send_Packet), HPD2 (Check_Status_B), HPD3 (INTRQ_wait), HPD4 (Transfer_Data) *)
-		PROCEDURE ProtPacketDMA(command: CommandPacket; ms: LONGINT; VAR status: SET): LONGINT;
+		PROCEDURE ProtPacketDMA(command: CommandPacket; ms: LONGINT; VAR status: SET): WORD;
 		VAR
 			res: WORD;
 			ch: CHAR;
@@ -799,7 +799,7 @@ TYPE
 			Machine.Portout8(cnlbase+Ofs_Control, CHR(i));
 		END SetInterrupt;
 
-		PROCEDURE CreateDevice(devNum: LONGINT): LONGINT;
+		PROCEDURE CreateDevice(devNum: LONGINT): WORD;
 		VAR status: SET;
 			res: WORD; dev, devATA: Device; devATAPI: DeviceATAPI; ch: CHAR;
 			buf: ARRAY BS DIV 2 OF INTEGER;
@@ -870,7 +870,7 @@ TYPE
 		END CreateDevice;
 
 		PROCEDURE InitController;
-		VAR p, res: LONGINT; status: SET;
+		VAR p: LONGINT; res: WORD; status: SET;
 		BEGIN
 			res := ProtSwReset(IdentifyTimeout);
 			(*IF res # Res_OK THEN
@@ -969,7 +969,7 @@ TYPE
 
 		PROCEDURE Transfer*(op, block, num: LONGINT; VAR data: ARRAY OF CHAR; ofs: LONGINT; VAR res: WORD);
 		VAR
-			num1, try, ignore: LONGINT; bufAdr: ADDRESS;
+			num1, try: LONGINT; ignore: WORD; bufAdr: ADDRESS;
 			dma: BOOLEAN;
 		BEGIN
 			bufAdr := ADDRESSOF(data[ofs]);
@@ -1070,7 +1070,7 @@ TYPE
 			RETURN controller.ExecuteCommand(cmd, IOTimeout, status) = Res_OK;
 		END SetWriteCache;
 
-		PROCEDURE TransferEx(op: LONGINT; lba: HUGEINT; num: LONGINT; bufAdr: ADDRESS; dma: BOOLEAN): LONGINT;
+		PROCEDURE TransferEx(op: LONGINT; lba: HUGEINT; num: LONGINT; bufAdr: ADDRESS; dma: BOOLEAN): WORD;
 		VAR command: Command; status: SET;
 		BEGIN {EXCLUSIVE}
 			IF (op # Disks.Read) & (op # Disks.Write) THEN RETURN Disks.Unsupported; END;
@@ -1079,7 +1079,7 @@ TYPE
 			RETURN controller.ExecuteCommand(command, IOTimeout, status);
 		END TransferEx;
 
-		PROCEDURE Reset(): LONGINT;
+		PROCEDURE Reset(): WORD;
 		VAR res: WORD;
 		BEGIN
 			IF TraceVerbose & (trace * TraceCommands # {})  THEN Show(name); KernelLog.String(" reset controller"); KernelLog.Ln; END;
@@ -1093,7 +1093,7 @@ TYPE
 		END Reset;
 
 		(* Only for ATA 4 or older *)
-		PROCEDURE InitDevice(): LONGINT;
+		PROCEDURE InitDevice(): WORD;
 		VAR command: CommandCHS; status: SET;
 		BEGIN
 			command := cmdCHS;
@@ -1103,7 +1103,7 @@ TYPE
 			RETURN controller.ExecuteCommand(command, IOTimeout, status);
 		END InitDevice;
 
-		PROCEDURE Flush(): LONGINT;
+		PROCEDURE Flush(): WORD;
 		VAR res: WORD;
 		BEGIN
 			res := Disks.Unsupported;
@@ -1113,13 +1113,13 @@ TYPE
 			RETURN res;
 		END Flush;
 
-		PROCEDURE MediaEject(immediate, load: BOOLEAN): LONGINT;
+		PROCEDURE MediaEject(immediate, load: BOOLEAN): WORD;
 		BEGIN {EXCLUSIVE}
 			IF ~(RemovableBit IN id.type) THEN RETURN Disks.Unsupported; END;
 			RETURN SendATACommand(0EDH, IOTimeout); (* media eject *)
 		END MediaEject;
 
-		PROCEDURE MediaLock(lock: BOOLEAN): LONGINT;
+		PROCEDURE MediaLock(lock: BOOLEAN): WORD;
 		VAR
 			command: CommandLBA;
 			res: WORD;
@@ -1143,12 +1143,12 @@ TYPE
 			RETURN res;
 		END MediaLock;
 
-		PROCEDURE Powersave(): LONGINT;
+		PROCEDURE Powersave(): WORD;
 		BEGIN
 			RETURN SendATACommand(0E0H, IOTimeout); (* standby immediate *)
 		END Powersave;
 
-		PROCEDURE SendATACommand(cmd, ms: LONGINT): LONGINT;
+		PROCEDURE SendATACommand(cmd, ms: LONGINT): WORD;
 		VAR command: Command; status: SET;
 		BEGIN {EXCLUSIVE}
 			command := NewCommand(cmd, Protocol_NonData);
@@ -1240,7 +1240,7 @@ TYPE
 		END NewCommandLBA48;
 
 		(* Identify an ATA device. *)
-		PROCEDURE IdentifyDevice(buf: ARRAY OF INTEGER): LONGINT;
+		PROCEDURE IdentifyDevice(buf: ARRAY OF INTEGER): WORD;
 		VAR res, size1, hsize: LONGINT;
 		BEGIN
 			(* ATA 4 or older *)
@@ -1458,7 +1458,7 @@ TYPE
 			END
 		END Handle;
 
-		PROCEDURE ExecuteCommand*(read: BOOLEAN; VAR packet, data: ARRAY OF CHAR; ofs, size: LONGINT; dma: BOOLEAN): LONGINT;
+		PROCEDURE ExecuteCommand*(read: BOOLEAN; VAR packet, data: ARRAY OF CHAR; ofs, size: LONGINT; dma: BOOLEAN): WORD;
 		VAR
 			command: CommandPacket;
 			i: LONGINT; res: WORD;
@@ -1506,7 +1506,7 @@ TYPE
 			END;
 		END ProcessSense;
 
-		PROCEDURE TransferEx*(op: LONGINT; lba: HUGEINT; num: LONGINT; bufAdr: ADDRESS; dma: BOOLEAN): LONGINT;
+		PROCEDURE TransferEx*(op: LONGINT; lba: HUGEINT; num: LONGINT; bufAdr: ADDRESS; dma: BOOLEAN): WORD;
 		VAR
 			command: Command;
 			res: WORD; timeout: LONGINT;
@@ -1528,7 +1528,7 @@ TYPE
 			RETURN res;
 		END TransferEx;
 
-		PROCEDURE WaitUntilReady(): LONGINT;
+		PROCEDURE WaitUntilReady(): WORD;
 		VAR res: WORD; retry: BOOLEAN;
 		BEGIN
 			REPEAT
@@ -1548,7 +1548,7 @@ TYPE
 
 	(* ATAPI funtions *)
 
-		PROCEDURE Reset(): LONGINT;
+		PROCEDURE Reset(): WORD;
 		VAR
 			i: LONGINT; res: WORD;
 			status: SET;
@@ -1577,7 +1577,7 @@ TYPE
 			RETURN Res_OK;
 		END Reset;
 
-		PROCEDURE RequestSense*(): LONGINT;
+		PROCEDURE RequestSense*(): WORD;
 		VAR
 			command: CommandPacket;
 			buf: ARRAY 18 OF CHAR;
@@ -1614,7 +1614,7 @@ TYPE
 			RETURN Res_OK;
 		END RequestSense;
 
-		PROCEDURE TestUnitReady*(): LONGINT;
+		PROCEDURE TestUnitReady*(): WORD;
 		VAR
 			command: CommandPacket;
 			res: WORD;
@@ -1634,12 +1634,12 @@ TYPE
 			RETURN res;
 		END TestUnitReady;
 
-		PROCEDURE Flush(): LONGINT;
+		PROCEDURE Flush(): WORD;
 		BEGIN
 			RETURN Flush^();
 		END Flush;
 
-		PROCEDURE MediaEject*(immediate, load: BOOLEAN): LONGINT;
+		PROCEDURE MediaEject*(immediate, load: BOOLEAN): WORD;
 		VAR
 			command: CommandPacket;
 			res: WORD; timeout: LONGINT;
@@ -1667,7 +1667,7 @@ TYPE
 			RETURN res;
 		END MediaEject;
 
-		PROCEDURE MediaLock*(lock: BOOLEAN): LONGINT;
+		PROCEDURE MediaLock*(lock: BOOLEAN): WORD;
 		VAR
 			command: CommandPacket;
 			res: WORD;
@@ -1684,7 +1684,7 @@ TYPE
 			RETURN res;
 		END MediaLock;
 
-		PROCEDURE Powersave(): LONGINT;
+		PROCEDURE Powersave(): WORD;
 		VAR
 			command: CommandPacket;
 			res: WORD;
@@ -1700,9 +1700,9 @@ TYPE
 			RETURN res;
 		END Powersave;
 
-		PROCEDURE ReadCapacity*(VAR blkSize, size: LONGINT): LONGINT;
+		PROCEDURE ReadCapacity*(VAR blkSize, size: LONGINT): WORD;
 		VAR
-			buf: ARRAY 2 OF LONGINT;  res, sense: LONGINT;
+			buf: ARRAY 2 OF LONGINT;  res: WORD; sense: LONGINT;
 			command: CommandPacket; status: SET;
 		BEGIN
 			IF TraceVerbose & (trace * (TraceCommands + TraceAtapi + TraceInit) # {}) THEN
@@ -1798,7 +1798,7 @@ TYPE
 			RETURN command;
 		END NewCommandPacket;
 
-		PROCEDURE IdentifyDevice(buf: ARRAY OF INTEGER): LONGINT;
+		PROCEDURE IdentifyDevice(buf: ARRAY OF INTEGER): WORD;
 		VAR res : WORD;
 		BEGIN
 			maxTransfer := 65535;
@@ -2191,7 +2191,7 @@ BEGIN {EXCLUSIVE}
 END AddController;
 
 PROCEDURE IdentifyController*(bus, dev, fkt: LONGINT);
-VAR res, pcmd_ba, pcnl_ba, scmd_ba, scnl_ba, bm_ba, irq: LONGINT; s: SET;
+VAR res: WORD; pcmd_ba, pcnl_ba, scmd_ba, scnl_ba, bm_ba, irq: LONGINT; s: SET;
 	c: Controller;
 BEGIN
 	res := PCI.ReadConfigDword(bus, dev, fkt,  PCI.Adr0Reg, pcmd_ba);
@@ -2272,7 +2272,7 @@ BEGIN
 END ScanPCIClass;
 
 PROCEDURE ScanIterate;
-VAR pci: PCI.Pci; res,r0,r8,class: LONGINT;
+VAR pci: PCI.Pci; res: WORD; r0,r8,class: LONGINT;
 BEGIN
 	PCI.StartIterate(pci);
 	WHILE PCI.Iterate(pci) DO

+ 3 - 3
source/BIOS.Adaptec7.Mod

@@ -867,7 +867,7 @@ END SeqLoad;
 
 PROCEDURE PCIClearInt(d: Bus);
 CONST	DPR = 0;  RMA = 5;  RTA = 4;
-VAR	res, dw: LONGINT;  bus, dev, slot: LONGINT;
+VAR	res: WORD; dw: LONGINT;  bus, dev, slot: LONGINT;
 BEGIN
 	bus := d.busNo;  dev := d.devNo;  slot := d.slotNo;
 	res := PCI.ReadConfigByte(bus, dev, slot, 7H, dw);
@@ -878,7 +878,7 @@ BEGIN
 END PCIClearInt;
 
 PROCEDURE PCIInit(d: Bus;  bus, dev, slot: LONGINT);
-VAR  res, dw: LONGINT;
+VAR  res: WORD; dw: LONGINT;
 BEGIN
 	IF traceCalls IN trace THEN  BusNameMsg(d, "PCIInit"); KernelLog.Ln  END;
 	res:=PCI.ReadConfigByte(bus, dev, slot, PCI.IntlReg, dw);	(*irq*)
@@ -1598,7 +1598,7 @@ END BusInit;
 (* Bus detection *)
 
 PROCEDURE Detect;
-VAR  dummy, idx, bus, dev, slot, res, signature, i: LONGINT;  host: Bus;
+VAR  dummy, idx, bus, dev, slot, signature, i: LONGINT; res: WORD; host: Bus;
 BEGIN
 	IF traceCalls IN trace THEN KernelLog.String("Ada7: Detect"); KernelLog.Ln  END;
 	IF PCI.Done = PCI.PCIPresent(dummy, dummy, dummy) THEN

+ 2 - 2
source/BIOS.Ethernet3Com90x.Mod

@@ -672,7 +672,7 @@ END InitRegisters;
 (* Scan the PCI bus for the specified card. *)
 
 PROCEDURE ScanPCI(vendor, device, model: LONGINT; flags, media: SET);
-VAR index, bus, dev, fct, res, base, irq, i: LONGINT; d: LinkDevice; c: Controller; name: Plugins.Name;
+VAR index, bus, dev, fct, base, irq, i: LONGINT; res: WORD; d: LinkDevice; c: Controller; name: Plugins.Name;
 BEGIN
 	index := 0;
 	WHILE (PCI.FindPCIDevice(device, vendor, index, bus, dev, fct) = PCI.Done) & (installed < 10) DO
@@ -776,7 +776,7 @@ VAR i, base, win: LONGINT; int: INTEGER; table: Plugins.Table;
 	END DWord;
 
 	PROCEDURE PCIWord(reg: ARRAY OF CHAR; ofs: LONGINT);
-	VAR x, res: LONGINT; ctrl: Controller;
+	VAR x: LONGINT; res: WORD; ctrl: Controller;
 	BEGIN
 		ctrl := table[i](LinkDevice).ctrl;
 		KernelLog.String(reg); KernelLog.Char("=");

+ 3 - 3
source/BIOS.Oberon.Diskettes.Mod

@@ -32,7 +32,7 @@ TYPE
 			Transfer1(SELF, op, start, num, buf, ofs, res)
 		END Transfer;
 
-		PROCEDURE GetSize*(VAR size, res: LONGINT);
+		PROCEDURE GetSize*(VAR size: LONGINT; VAR res: WORD);
 		BEGIN
 			GetSize1(SELF, size, res)
 		END GetSize;
@@ -411,7 +411,7 @@ BEGIN {EXCLUSIVE}
 	Transfer0(d, op, start, num, buf, ofs, res)
 END Transfer1;
 
-PROCEDURE GetSize1(d: Disks.Device;  VAR size, res: LONGINT);
+PROCEDURE GetSize1(d: Disks.Device;  VAR size: LONGINT; VAR res: WORD);
 VAR dev: Device;  buf: ARRAY BS OF CHAR;
 BEGIN {EXCLUSIVE}
 	dev := d(Device);
@@ -553,7 +553,7 @@ BEGIN
 END Init;
 
 PROCEDURE Register;
-VAR i, res: LONGINT; dev: Device; name: Plugins.Name;
+VAR i: LONGINT; res: WORD; dev: Device; name: Plugins.Name;
 BEGIN
 	FOR i := 0 TO MaxDevices-1 DO
 		dev := device[i];

+ 19 - 19
source/BIOS.PCI.Mod

@@ -55,7 +55,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		pciEnabled: BOOLEAN;
 
 
-	PROCEDURE PCIPresent*(VAR version, lastPCIbus, hwMech: LONGINT): LONGINT;
+	PROCEDURE PCIPresent*(VAR version, lastPCIbus, hwMech: LONGINT): WORD;
 	VAR res: WORD; pci: Pci; r0: LONGINT;
 	BEGIN {EXCLUSIVE}
 		IF pciEnabled THEN
@@ -77,7 +77,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END PCIPresent;
 
-	PROCEDURE FindPCIDevice*(devId, vendId, idx: LONGINT; VAR busNr, devNr, fktNr: LONGINT): LONGINT;
+	PROCEDURE FindPCIDevice*(devId, vendId, idx: LONGINT; VAR busNr, devNr, fktNr: LONGINT): WORD;
 	VAR pci: Pci; r0, vendorId, deviceId, index: LONGINT; res: WORD;
 	BEGIN {EXCLUSIVE}
 		IF pciEnabled THEN
@@ -110,7 +110,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END FindPCIDevice;
 
-	PROCEDURE FindPCIClassCode*(classCode, idx: LONGINT; VAR busNr, devNr, fktNr: LONGINT): LONGINT;
+	PROCEDURE FindPCIClassCode*(classCode, idx: LONGINT; VAR busNr, devNr, fktNr: LONGINT): WORD;
 	VAR pci: Pci; r0, r8,  index, class: LONGINT; res: WORD;
 	BEGIN {EXCLUSIVE}
 		IF pciEnabled THEN
@@ -141,7 +141,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END FindPCIClassCode;
 
-	PROCEDURE GenerateSpecialCycle*(busNr, specCycleData: LONGINT): LONGINT;
+	PROCEDURE GenerateSpecialCycle*(busNr, specCycleData: LONGINT): WORD;
 	VAR res: WORD;
 	BEGIN {EXCLUSIVE}
 		IF pciEnabled THEN
@@ -163,7 +163,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END GenerateSpecialCycle;
 
-	PROCEDURE GetIrqRoutingOptions*(VAR rt: RouteTable; VAR IrqBitmap: SET): LONGINT;
+	PROCEDURE GetIrqRoutingOptions*(VAR rt: RouteTable; VAR IrqBitmap: SET): WORD;
 	CONST dbN = 16*8;
 	VAR
 		res: WORD;
@@ -213,7 +213,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END GetIrqRoutingOptions;
 
-	PROCEDURE SetPCIIrq*(IntPin, IrqNum, busNr, devNr, fktNr: LONGINT): LONGINT;
+	PROCEDURE SetPCIIrq*(IntPin, IrqNum, busNr, devNr, fktNr: LONGINT): WORD;
 	VAR res: WORD;
 	BEGIN {EXCLUSIVE}
 		IF pciEnabled THEN
@@ -236,7 +236,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 	END SetPCIIrq;
 
 	(** Set bits included in <mask> in the PCI command register if not set already *)
-	PROCEDURE Enable*(mask : SET; busNr, devNr, fktNr : LONGINT) : LONGINT;
+	PROCEDURE Enable*(mask : SET; busNr, devNr, fktNr : LONGINT) : WORD;
 	VAR cmdReg : LONGINT; res : WORD;
 	BEGIN
 		res := ReadConfigWord(busNr, devNr, fktNr, CmdReg, cmdReg);
@@ -257,35 +257,35 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res;
 	END Enable;
 
-	PROCEDURE ReadConfigByte*(busNr, devNr, fktNr, regNr: LONGINT; VAR regVal: LONGINT): LONGINT;
+	PROCEDURE ReadConfigByte*(busNr, devNr, fktNr, regNr: LONGINT; VAR regVal: LONGINT): WORD;
 	BEGIN
 		RETURN PCIReadConfig8(busNr, devNr, fktNr, regNr, regVal)
 	END ReadConfigByte;
 
-	PROCEDURE ReadConfigWord*(busNr, devNr, fktNr, regNr: LONGINT; VAR regVal: LONGINT): LONGINT;
+	PROCEDURE ReadConfigWord*(busNr, devNr, fktNr, regNr: LONGINT; VAR regVal: LONGINT): WORD;
 	BEGIN
 		ASSERT(regNr MOD 2 = 0);
 		RETURN PCIReadConfig16(busNr, devNr, fktNr, regNr, regVal)
 	END ReadConfigWord;
 
-	PROCEDURE ReadConfigDword*(busNr, devNr, fktNr, regNr: LONGINT; VAR regVal: LONGINT): LONGINT;
+	PROCEDURE ReadConfigDword*(busNr, devNr, fktNr, regNr: LONGINT; VAR regVal: LONGINT): WORD;
 	BEGIN
 		ASSERT(regNr MOD 4 = 0);
 		RETURN PCIReadConfig32(busNr, devNr, fktNr, regNr, regVal)
 	END ReadConfigDword;
 
-	PROCEDURE WriteConfigByte*(busNr, devNr, fktNr, regNr, regVal: LONGINT): LONGINT;
+	PROCEDURE WriteConfigByte*(busNr, devNr, fktNr, regNr, regVal: LONGINT): WORD;
 	BEGIN
 		RETURN PCIWriteConfig8(busNr, devNr, fktNr, regNr, regVal)
 	END WriteConfigByte;
 
-	PROCEDURE WriteConfigWord*(busNr, devNr, fktNr, regNr, regVal: LONGINT): LONGINT;
+	PROCEDURE WriteConfigWord*(busNr, devNr, fktNr, regNr, regVal: LONGINT): WORD;
 	BEGIN
 		ASSERT(regNr MOD 2 = 0);
 		RETURN PCIWriteConfig16(busNr, devNr, fktNr, regNr, regVal)
 	END WriteConfigWord;
 
-	PROCEDURE WriteConfigDword*(busNr, devNr, fktNr, regNr, regVal: LONGINT): LONGINT;
+	PROCEDURE WriteConfigDword*(busNr, devNr, fktNr, regNr, regVal: LONGINT): WORD;
 	BEGIN
 		ASSERT(regNr MOD 4 = 0);
 		RETURN PCIWriteConfig32(busNr, devNr, fktNr, regNr, regVal)
@@ -323,7 +323,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		END;
 	END GetAdr1;
 
-	PROCEDURE PCIReadConfig32(pciBus, pciDev, pciFn, reg: LONGINT; VAR val: LONGINT): LONGINT;
+	PROCEDURE PCIReadConfig32(pciBus, pciDev, pciFn, reg: LONGINT; VAR val: LONGINT): WORD;
 	VAR adr, dataAdr: LONGINT; state: SET; res: WORD;
 	BEGIN
 		IF pciEnabled THEN
@@ -339,7 +339,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END PCIReadConfig32;
 
-	PROCEDURE PCIReadConfig16(pciBus, pciDev, pciFn, reg: LONGINT; VAR val: LONGINT): LONGINT;
+	PROCEDURE PCIReadConfig16(pciBus, pciDev, pciFn, reg: LONGINT; VAR val: LONGINT): WORD;
 	VAR adr, dataAdr: LONGINT; state: SET; res: WORD; int: INTEGER;
 	BEGIN
 		IF pciEnabled THEN
@@ -356,7 +356,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END PCIReadConfig16;
 
-	PROCEDURE PCIReadConfig8(pciBus, pciDev, pciFn, reg: LONGINT; VAR val: LONGINT): LONGINT;
+	PROCEDURE PCIReadConfig8(pciBus, pciDev, pciFn, reg: LONGINT; VAR val: LONGINT): WORD;
 	VAR adr, dataAdr: LONGINT; state: SET; res: WORD; chr: CHAR;
 	BEGIN
 		IF pciEnabled THEN
@@ -373,7 +373,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END PCIReadConfig8;
 
-	PROCEDURE PCIWriteConfig32(pciBus, pciDev, pciFn: LONGINT; reg: LONGINT;  val: LONGINT): LONGINT;
+	PROCEDURE PCIWriteConfig32(pciBus, pciDev, pciFn: LONGINT; reg: LONGINT;  val: LONGINT): WORD;
 	VAR adr, dataAdr: LONGINT; state: SET; res: WORD;
 	BEGIN
 		IF pciEnabled THEN
@@ -389,7 +389,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END PCIWriteConfig32;
 
-	PROCEDURE PCIWriteConfig16(pciBus, pciDev, pciFn: LONGINT; reg: LONGINT;  val: LONGINT): LONGINT;
+	PROCEDURE PCIWriteConfig16(pciBus, pciDev, pciFn: LONGINT; reg: LONGINT;  val: LONGINT): WORD;
 	VAR adr, dataAdr: LONGINT; state: SET; res: WORD;
 	BEGIN
 		IF pciEnabled THEN
@@ -405,7 +405,7 @@ MODULE PCI;	 (** author: fof -- PCI without using PCI bios (using PCI tables des
 		RETURN res
 	END PCIWriteConfig16;
 
-	PROCEDURE PCIWriteConfig8(pciBus, pciDev, pciFn: LONGINT; reg: LONGINT;  val: LONGINT): LONGINT;
+	PROCEDURE PCIWriteConfig8(pciBus, pciDev, pciFn: LONGINT; reg: LONGINT;  val: LONGINT): WORD;
 	VAR adr, dataAdr: LONGINT; state: SET; res: WORD;
 	BEGIN
 		IF pciEnabled THEN

+ 3 - 3
source/BIOS.SymbiosASPI.Mod

@@ -281,8 +281,8 @@ MODULE SymbiosASPI;	(** non-portable *)
 		IDs[4] := C825DevId; IDs[5] := C860DevId; IDs[6] := C875DevId; IDs[7] := C896DevId
 	END InitIDs;
 
-	PROCEDURE PCIFindSYMDevice(Dev: DevicePtr): LONGINT;
-	VAR res, res1, regVal: LONGINT;
+	PROCEDURE PCIFindSYMDevice(Dev: DevicePtr): WORD;
+	VAR res, res1: WORD; regVal: LONGINT;
 	BEGIN
 		res := PCI.FindPCIDevice(Dev.devId, NCRVendorId, Dev.devIdx, Dev.busNr, Dev.devNr, Dev.fktNr);
 (*
@@ -931,7 +931,7 @@ MODULE SymbiosASPI;	(** non-portable *)
 	END InitTargets;
 
 	PROCEDURE InitASPI;
-	VAR res: CHAR; res1, version, lastPCIbus, hwMech, dev: LONGINT;
+	VAR res: CHAR; res1: WORD; version, lastPCIbus, hwMech, dev: LONGINT;
 	BEGIN
 		res := SSFailedInit; DevNum := 0;
 		res1 := PCI.PCIPresent(version, lastPCIbus, hwMech);

+ 2 - 2
source/BIOS.UsbEhciPCI.Mod

@@ -19,7 +19,7 @@ TYPE
 	EnhancedHostController = OBJECT (UsbEhci.EnhancedHostController)
 		(* Release the HC ownership semaphore; eecp is the EHCI Extended Capability Pointer *)
 		PROCEDURE ReleaseHcOwnerShip(bus, device, function, eecp : LONGINT);
-		VAR register, res : LONGINT; usblegsup : SET;
+		VAR register : LONGINT; res : WORD; usblegsup : SET;
 		BEGIN
 			(* 00H: No capability list; > 40H to maintain consistency with PCI header *)
 			IF (eecp > 40H) THEN
@@ -60,7 +60,7 @@ TYPE
 	VAR
 		timer : Kernel.Timer;
 		usblegsup : SET;
-		eecp, reg, res, waits : LONGINT;
+		eecp, reg, waits : LONGINT; res: WORD;
 		hcOwnedByOS : BOOLEAN;
 	BEGIN
 		(* Get the HC Capabilities Parameters register *)

+ 1 - 1
source/BIOS.i810Sound.Mod

@@ -1470,7 +1470,7 @@ TYPE
 	(* Scan after PCI card and install it if found *)
 	PROCEDURE ScanPCI(vendid, devid : LONGINT);
 	VAR
-		index, res, i : LONGINT;
+		index, i : LONGINT; res: WORD;
 		CmdReg : LONGINT;
 		bus, dev, fkt : LONGINT;
 		nambar, nabmbar, irq : LONGINT;

+ 16 - 16
source/BluetoothHCI.Mod

@@ -218,7 +218,7 @@ TYPE
 			PBF: packet boundary flag
 			BF: broadcast flag
 		*)
-		PROCEDURE SendACL*(PBF, BF: LONGINT; VAR data: ARRAY OF CHAR; ofs, len: LONGINT): LONGINT;
+		PROCEDURE SendACL*(PBF, BF: LONGINT; VAR data: ARRAY OF CHAR; ofs, len: LONGINT): WORD;
 		VAR v: LONGINT; res: WORD; aclhdr: ARRAY 4 OF CHAR;
 		BEGIN
 			ASSERT((pbfContinuing <= PBF) & (PBF <= pbfFirst));
@@ -239,7 +239,7 @@ TYPE
 			RETURN res
 		END SendACL;
 
-		PROCEDURE SendACLH*(PBF, BF: LONGINT; VAR hdr: ARRAY OF CHAR; hdrlen: LONGINT; VAR data: ARRAY OF CHAR; ofs, len: LONGINT): LONGINT;
+		PROCEDURE SendACLH*(PBF, BF: LONGINT; VAR hdr: ARRAY OF CHAR; hdrlen: LONGINT; VAR data: ARRAY OF CHAR; ofs, len: LONGINT): WORD;
 		VAR v, totlen: LONGINT; res: WORD; aclhdr: ARRAY 4 OF CHAR;
 		BEGIN
 			totlen := len + hdrlen;
@@ -389,7 +389,7 @@ TYPE
 		END Close;
 
 		(** initialize the module, get BDADDR, MTUs, etc *)
-		PROCEDURE Initialize*(): LONGINT;
+		PROCEDURE Initialize*(): WORD;
 		VAR res: WORD;
 		BEGIN
 			IF TraceHCI THEN
@@ -573,7 +573,7 @@ TYPE
 
 		(* ------- link controller  commands -------- *)
 
-		PROCEDURE Inquiry*(lap : LONGINT;inquiryLength : LONGINT; numResponses : LONGINT) : LONGINT;
+		PROCEDURE Inquiry*(lap : LONGINT;inquiryLength : LONGINT; numResponses : LONGINT) : WORD;
 		VAR
 			par: ARRAY 5 OF CHAR;
 			event: Bluetooth.EventPacket;
@@ -589,7 +589,7 @@ TYPE
 			RETURN res;
 		END Inquiry;
 
-		PROCEDURE CreateConnection*(bdAddr: Bluetooth.BDAddr; clkofs: LONGINT): LONGINT;
+		PROCEDURE CreateConnection*(bdAddr: Bluetooth.BDAddr; clkofs: LONGINT): WORD;
 		(* TODO: parameters!!! *)
 		VAR
 			par: ARRAY 13 OF CHAR;
@@ -607,7 +607,7 @@ TYPE
 			RETURN res
 		END CreateConnection;
 
-		PROCEDURE Disconnect*(linkHandle,reason : LONGINT) : LONGINT;
+		PROCEDURE Disconnect*(linkHandle,reason : LONGINT) : WORD;
 		VAR
 			par: ARRAY 3 OF CHAR;
 			event: Bluetooth.EventPacket;
@@ -623,7 +623,7 @@ TYPE
 
 		(* ------- host controller & bas band commands -------- *)
 
-		PROCEDURE SetEventMask*(eventMask : LONGINT) : LONGINT;
+		PROCEDURE SetEventMask*(eventMask : LONGINT) : WORD;
 		VAR
 			par : ARRAY 8 OF CHAR;
 			res: WORD;
@@ -641,7 +641,7 @@ TYPE
 		END SetEventMask;
 
 
-		PROCEDURE Reset*(): LONGINT;
+		PROCEDURE Reset*(): WORD;
 		VAR
 			pending: BOOLEAN;
 			event: Bluetooth.EventPacket;
@@ -661,7 +661,7 @@ TYPE
 			RETURN res
 		END Reset;
 
-		PROCEDURE SetEventFilter*(type, conditionType: CHAR; condition: ARRAY OF CHAR): LONGINT;
+		PROCEDURE SetEventFilter*(type, conditionType: CHAR; condition: ARRAY OF CHAR): WORD;
 		VAR
 			par: ARRAY 9 OF CHAR;
 			i, len: LONGINT; res: WORD;
@@ -697,7 +697,7 @@ TYPE
 			RETURN res
 		END SetEventFilter;
 
-		PROCEDURE WriteScanEnable*(mode: CHAR): LONGINT;
+		PROCEDURE WriteScanEnable*(mode: CHAR): WORD;
 		VAR
 			par: ARRAY 1 OF CHAR;
 			pending: BOOLEAN;
@@ -711,7 +711,7 @@ TYPE
 		END WriteScanEnable;
 
 
-		PROCEDURE ReadScanEnable*(VAR scanEnable : CHAR) : LONGINT;
+		PROCEDURE ReadScanEnable*(VAR scanEnable : CHAR) : WORD;
 		VAR
 			pending: BOOLEAN;
 			event: Bluetooth.EventPacket;
@@ -723,7 +723,7 @@ TYPE
 			RETURN res;
 		END ReadScanEnable;
 
-		PROCEDURE WriteLinkSupervisionTimeout*(inHandle, linkTimeout : LONGINT) : LONGINT;
+		PROCEDURE WriteLinkSupervisionTimeout*(inHandle, linkTimeout : LONGINT) : WORD;
 		VAR
 			par: ARRAY 4 OF CHAR;
 			pending: BOOLEAN;
@@ -753,7 +753,7 @@ TYPE
 			RETURN res;
 		END WriteLinkSupervisionTimeout;
 
-		PROCEDURE ReadLinkSupervisionTimeout*(inHandle : LONGINT; VAR linkTimeout : LONGINT) : LONGINT;
+		PROCEDURE ReadLinkSupervisionTimeout*(inHandle : LONGINT; VAR linkTimeout : LONGINT) : WORD;
 		VAR
 			par: ARRAY 2 OF CHAR;
 			pending: BOOLEAN;
@@ -785,7 +785,7 @@ TYPE
 
 		(* ------- Erricsson  paramters -------- *)
 
-		PROCEDURE EricssonSetUARTBaudRate*(baudRate : CHAR):LONGINT;
+		PROCEDURE EricssonSetUARTBaudRate*(baudRate : CHAR):WORD;
 		VAR
 			par: ARRAY 1 OF CHAR;
 			pending: BOOLEAN;
@@ -805,7 +805,7 @@ TYPE
 
 		(* ------- Informational paramters -------- *)
 
-		PROCEDURE ReadBDAddr*(VAR bdAddr: Bluetooth.BDAddr): LONGINT;
+		PROCEDURE ReadBDAddr*(VAR bdAddr: Bluetooth.BDAddr): WORD;
 		VAR
 			event: Bluetooth.EventPacket;
 			pending: BOOLEAN;
@@ -829,7 +829,7 @@ TYPE
 			RETURN res
 		END ReadBDAddr;
 
-		PROCEDURE ReadBufferSize*(VAR aclMaxLen, scoMaxLen, aclNumPackets, scoNumPackets: LONGINT): LONGINT;
+		PROCEDURE ReadBufferSize*(VAR aclMaxLen, scoMaxLen, aclNumPackets, scoNumPackets: LONGINT): WORD;
 		VAR
 			event: Bluetooth.EventPacket;
 			pending: BOOLEAN;

+ 18 - 18
source/BluetoothL2CAP.Mod

@@ -250,10 +250,10 @@ TYPE
 			Objects.SetTimeout(t, Timeout, ms)
 		END SetRTXTimer;
 
-		PROCEDURE Connect(psm: LONGINT; VAR status: LONGINT): LONGINT;
+		PROCEDURE Connect(psm: LONGINT; VAR status: LONGINT): WORD;
 		VAR
 			cmd: ARRAY 8 OF CHAR;
-			ofs, n, res: LONGINT;
+			ofs, n: LONGINT; res: WORD;
 			tmp: LONGINT;
 			sc: SignallingChannel;
 			identifier: CHAR;
@@ -364,12 +364,12 @@ TYPE
 			RETURN res
 		END ConnectResponse;
 
-		PROCEDURE Configure(VAR inMTU, outFlow, outFlushTO: LONGINT; linkTO: LONGINT): LONGINT;
+		PROCEDURE Configure(VAR inMTU, outFlow, outFlushTO: LONGINT; linkTO: LONGINT): WORD;
 		(* linkTO is not used!! mazda *)
 		VAR
 
 			cmd: ARRAY 48 OF CHAR;
-			ofs, pos, n, res, value: LONGINT;
+			ofs, pos, n, value: LONGINT; res: WORD;
 			tmp: LONGINT;
 			sc: SignallingChannel; identifier, type: CHAR;
 			response: Response;
@@ -468,7 +468,7 @@ TYPE
 
 		VAR
 			cmd: ARRAY 48 OF CHAR;
-			pos, res: LONGINT;
+			pos: LONGINT; res: WORD;
 			sc: SignallingChannel;
 
 		BEGIN
@@ -527,7 +527,7 @@ TYPE
 			cmd: ARRAY 8 OF CHAR;
 			identifier: CHAR;
 			response: Response;
-			ofs, rsid, rdid, res: LONGINT;
+			ofs, rsid, rdid: LONGINT; res: WORD;
 
 		BEGIN
 			IF state = Closed THEN
@@ -588,11 +588,11 @@ TYPE
 		END Disconnect;
 
 		(** sends an L2CAP packet over ACL *)
-		PROCEDURE Send(VAR data: ARRAY OF CHAR; ofs, len: LONGINT): LONGINT;
+		PROCEDURE Send(VAR data: ARRAY OF CHAR; ofs, len: LONGINT): WORD;
 
 		VAR
 			hdr: ARRAY 4 OF CHAR;
-			count, res: LONGINT;
+			count: LONGINT; res: WORD;
 
 		BEGIN {EXCLUSIVE}
 
@@ -668,7 +668,7 @@ TYPE
 			END;
 		END Receive;
 
-		PROCEDURE Write*(VAR buffer: ARRAY OF CHAR; ofs, len: LONGINT; VAR size: LONGINT): LONGINT;
+		PROCEDURE Write*(VAR buffer: ARRAY OF CHAR; ofs, len: LONGINT; VAR size: LONGINT): WORD;
 
 		VAR
 			res: WORD;
@@ -880,7 +880,7 @@ TYPE
 		(* receive and parse a signalling packet *)
 		PROCEDURE Receive(p: Packet);
 		VAR
-			pos, res: LONGINT;
+			pos: LONGINT; res: WORD;
 			c: CHAR;
 			s: SignalPacket;
 			request: Request;
@@ -1478,7 +1478,7 @@ TYPE
 			END;
 		END Init;
 
-		PROCEDURE CreateACLConnection*(l2cap : L2CAP;bdAddr : Bluetooth.BDAddr;VAR result : LONGINT);
+		PROCEDURE CreateACLConnection*(l2cap : L2CAP;bdAddr : Bluetooth.BDAddr;VAR result : WORD);
 		VAR link : HCI.Link;
 		BEGIN
 			result := hci.CreateConnection(bdAddr, 0);
@@ -1504,7 +1504,7 @@ TYPE
 
 		END CreateACLConnection;
 
-		PROCEDURE ReleaseACLConnection*(link:HCI.Link;VAR result:LONGINT);
+		PROCEDURE ReleaseACLConnection*(link:HCI.Link;VAR result:WORD);
 		BEGIN
 			ASSERT(link # NIL);
 			result := hci.Disconnect(link.handle,013H);
@@ -1517,7 +1517,7 @@ TYPE
 			END;
 		END ReleaseACLConnection;
 
-		PROCEDURE AcceptACLConnection*(l2cap : L2CAP;bdAddr : Bluetooth.BDAddr;VAR result : LONGINT);
+		PROCEDURE AcceptACLConnection*(l2cap : L2CAP;bdAddr : Bluetooth.BDAddr;VAR result : WORD);
 		VAR link : HCI.Link;
 		BEGIN
 			link := AwaitACLConnection(bdAddr);
@@ -1674,7 +1674,7 @@ TYPE
 		(** initiates the sending of a L2CAP_ConnectReq message and blocks until a corresponding L2CA_ConnectCfm(Neg)
 			or L2CA_TimeoutInd event is received.
 		*)
-		PROCEDURE Connect*(psm: LONGINT; bdAddr: Bluetooth.BDAddr; VAR lcid, result, status: LONGINT);
+		PROCEDURE Connect*(psm: LONGINT; bdAddr: Bluetooth.BDAddr; VAR lcid: LONGINT; VAR result: WORD; VAR status: LONGINT);
 		VAR
 			c: Channel;
 		BEGIN
@@ -1749,7 +1749,7 @@ TYPE
 			or L2CA_Timeout event is received.
 			inMTU, outFlow and outFlushTO: input/output parameters
 		*)
-		PROCEDURE Configure*(cid: LONGINT; VAR inMTU, outFlow, outFlushTO: LONGINT; linkTO: LONGINT; VAR result: LONGINT);
+		PROCEDURE Configure*(cid: LONGINT; VAR inMTU, outFlow, outFlushTO: LONGINT; linkTO: LONGINT; VAR result: WORD);
 		VAR c: Channel;
 		BEGIN
 			IF TraceL2CAP THEN
@@ -1841,7 +1841,7 @@ TYPE
 		(** requests the transfer of data across the channel. If the length of the data exceeds the outMTU then only the first
 			outMTU bytes are sent.
 		*)
-		PROCEDURE Write*(cid, ofs, length: LONGINT; VAR buffer: ARRAY OF CHAR; VAR size, result: LONGINT);
+		PROCEDURE Write*(cid, ofs, length: LONGINT; VAR buffer: ARRAY OF CHAR; VAR size: LONGINT; VAR result: WORD);
 		VAR c: Channel;
 		BEGIN
 
@@ -1980,13 +1980,13 @@ TYPE
 		END DisableConnectionlessTraffic;
 
 		(** general request to enable the reception of connectionless packets. *)
-		PROCEDURE EnableConnectionlessTraffic*(psm: LONGINT; VAR result: LONGINT);
+		PROCEDURE EnableConnectionlessTraffic*(psm: LONGINT; VAR result: WORD);
 		END EnableConnectionlessTraffic;
 
 		PROCEDURE Close*;
 		VAR
 			c: Channel;
-			result,i: LONGINT;
+			result: WORD; i: LONGINT;
 		BEGIN {EXCLUSIVE}
 			IF TraceL2CAP THEN
 				KernelLog.String(ModuleName);

+ 2 - 2
source/BluetoothRFCOMM.Mod

@@ -571,7 +571,7 @@ TYPE
 			RETURN l2capLayer;
 		END GetL2CAPLayer;
 
-		PROCEDURE Start*(bdAddr: Bluetooth.BDAddr; VAR result : LONGINT);
+		PROCEDURE Start*(bdAddr: Bluetooth.BDAddr; VAR result : WORD);
 		VAR
 			status : LONGINT;
 			inMTU, outFlushTO : LONGINT;
@@ -792,7 +792,7 @@ TYPE
 		PROCEDURE SendFrame(frame : ARRAY OF CHAR;length : LONGINT);
 		VAR
 			size : LONGINT;
-			result : LONGINT;
+			result : WORD;
 			i : LONGINT;
 		BEGIN
 			IF TraceRFCOMM THEN

+ 6 - 6
source/BluetoothTest.Mod

@@ -90,7 +90,7 @@ TYPE
 		END QoSViolationIndication;
 
 		PROCEDURE SendString(cid: LONGINT; VAR str: ARRAY OF CHAR);
-		VAR buf: POINTER TO ARRAY OF CHAR; i, len, res: LONGINT;
+		VAR buf: POINTER TO ARRAY OF CHAR; i, len: LONGINT; res: WORD;
 		BEGIN
 			NEW(buf,LEN(str)+2);
 			WHILE (str[i] # 0X) DO buf[i] := str[i]; INC(i) END;
@@ -624,7 +624,7 @@ END HexToChar;
 PROCEDURE ConnectTo*(context : Commands.Context);
 VAR
 	ident: Ident; d: Device;
-	remote: Bluetooth.BDAddr; i , offset, res: LONGINT;
+	remote: Bluetooth.BDAddr; i , offset: LONGINT; res: WORD;
 BEGIN
 	context.arg.SkipWhitespace; context.arg.String(ident); context.arg.SkipWhitespace;
 	FOR i := 0 TO LEN(remote)-1 DO remote[i] := HexToChar(context.arg.Get(), context.arg.Get()) END;
@@ -756,7 +756,7 @@ END ReadClockOffset;
 PROCEDURE SendACL*(context : Commands.Context);
 VAR
 	ident: Ident; d: Device;
-	data: ARRAY 256 OF CHAR; i, handle, cid, res: LONGINT; c1, c2: CHAR;
+	data: ARRAY 256 OF CHAR; i, handle, cid: LONGINT; res: WORD; c1, c2: CHAR;
 	l: HCI.Link;
 BEGIN
 	IF context.arg.GetString(ident) & context.arg.GetInteger(handle, FALSE) & context.arg.GetInteger(cid, FALSE) THEN
@@ -819,7 +819,7 @@ END TestStringToParam;
 PROCEDURE ReadBDAddr*(context : Commands.Context);
 VAR
 	ident: Ident; d: Device;
-	res, i: LONGINT; bdAddr: Bluetooth.BDAddr;
+	res: WORD; i: LONGINT; bdAddr: Bluetooth.BDAddr;
 BEGIN
 	IF context.arg.GetString(ident) THEN
 		d := Find(ident);
@@ -875,7 +875,7 @@ END L2CAPClose;
 PROCEDURE L2CAPConnect*(context : Commands.Context);
 VAR
 	ident: Ident; d: Device;
-	remote: Bluetooth.BDAddr; i, lcid, res, status: LONGINT;
+	remote: Bluetooth.BDAddr; i, lcid, status: LONGINT; res: WORD;
 BEGIN
 	context.arg.SkipWhitespace; context.arg.String(ident); context.arg.SkipWhitespace;
 	FOR i := 0 TO LEN(remote)-1 DO remote[i] := HexToChar(context.arg.Get(), context.arg.Get()) END;
@@ -903,7 +903,7 @@ END L2CAPConnect;
 PROCEDURE L2CAPConfigure*(context : Commands.Context);
 VAR
 	ident: Ident; d: Device;
-	cid, res, mtu, flushTO, flow, linkTO: LONGINT;
+	cid, mtu, flushTO, flow, linkTO: LONGINT; res: WORD;
 BEGIN
 	IF context.arg.GetString(ident) & context.arg.GetInteger(cid, TRUE) & context.arg.GetInteger(mtu, TRUE) &
 		context.arg.GetInteger(flushTO, TRUE) & context.arg.GetInteger(linkTO, TRUE) THEN

+ 11 - 11
source/CDRecord.Mod

@@ -387,7 +387,7 @@ TYPE
 			dev.GetSize(size, res);
 		END UpdateCapacity;
 
-		PROCEDURE GetBufferCapacity(VAR totalCapacity, unusedCapacity: LONGINT): LONGINT;
+		PROCEDURE GetBufferCapacity(VAR totalCapacity, unusedCapacity: LONGINT): WORD;
 		VAR
 			capacity: Lib.BufferCapacity;
 			res: WORD;
@@ -400,10 +400,10 @@ TYPE
 			RETURN res;
 		END GetBufferCapacity;
 
-		PROCEDURE Record*(VAR compilation: Compilation; settings: BurnSettings; onRecordStatusChanged: Utils.StatusProc): LONGINT;
+		PROCEDURE Record*(VAR compilation: Compilation; settings: BurnSettings; onRecordStatusChanged: Utils.StatusProc): WORD;
 		VAR
 			disc: Disc;
-			res, i, op, nwa, secs: LONGINT;
+			res: WORD; i, op, nwa, secs: LONGINT;
 			nibble: SET; (* the control nibble of the q channel *)
 			params: WriteParams;
 			cuesheet: CueSheet;
@@ -645,7 +645,7 @@ TYPE
 			reader := NIL;
 		END Abort;
 
-		PROCEDURE Write(op, startSec, nofBlocks: LONGINT; adr: ADDRESS): LONGINT;
+		PROCEDURE Write(op, startSec, nofBlocks: LONGINT; adr: ADDRESS): WORD;
 		VAR
 			res: WORD;
 		BEGIN
@@ -660,7 +660,7 @@ TYPE
 			RETURN res;
 		END Write;
 
-		PROCEDURE PadTrack(op: LONGINT; track: InformationTrack) : LONGINT;
+		PROCEDURE PadTrack(op: LONGINT; track: InformationTrack) : WORD;
 		VAR
 			res: WORD;
 			startSec, secsToPad, nofBlocks: LONGINT;
@@ -695,7 +695,7 @@ TYPE
 
 		PROCEDURE WriteTrack(op: LONGINT; VAR track: InformationTrack) : LONGINT;
 		VAR
-			res, startSec, bytesRead, count, nofBlocks: LONGINT;
+			res: WORD; startSec, bytesRead, count, nofBlocks: LONGINT;
 			timestamp, lastSecs: LONGINT;
 			buf: Buffer;
 		BEGIN
@@ -730,7 +730,7 @@ TYPE
 			RETURN ResOk;
 		END WriteTrack;
 
-		PROCEDURE SetWriteSpeed(speed: LONGINT): LONGINT;
+		PROCEDURE SetWriteSpeed(speed: LONGINT): WORD;
 		BEGIN
 			RETURN Lib.SetCDSpeed(dev, BestSpeed, speed*SingleSpeed, 0H);
 		END SetWriteSpeed;
@@ -743,7 +743,7 @@ TYPE
 		PROCEDURE GetDiscInfo*(disc: Disc): LONGINT;
 		VAR
 			info: Lib.DiscInfo;
-			res, secsize,secs, nwa: LONGINT;
+			res: WORD; secsize,secs, nwa: LONGINT;
 		BEGIN
 			IF dev.TestUnitReady() # ResOk THEN
 				res := dev.RequestSense();
@@ -821,7 +821,7 @@ TYPE
 			RETURN ResOk;
 		END GetDiscInfoEx;
 
-		PROCEDURE GetWriteParams(VAR  params: WriteParams): LONGINT;
+		PROCEDURE GetWriteParams(VAR  params: WriteParams): WORD;
 		VAR
 			res: WORD;
 			page: Lib.WriteParameterPage;
@@ -841,7 +841,7 @@ TYPE
 		PROCEDURE SetWriteParams(VAR params: WriteParams; save: BOOLEAN): LONGINT;
 		VAR
 			page: Lib.WriteParameterPage;
-			tmp: LONGINT;
+			tmp: WORD;
 
 		BEGIN
 			IF Lib.ModeSense(dev, Lib.MPCurrent, Lib.MPWriteParameters, ADDRESSOF(page), SIZEOF(Lib.WriteParameterPage)) # ResOk THEN
@@ -877,7 +877,7 @@ TYPE
 		PROCEDURE PrintWriteParams(): LONGINT;
 		VAR
 			page: Lib.WriteParameterPage;
-			tmp: LONGINT;
+			tmp: WORD;
 		BEGIN
 			IF Lib.ModeSense(dev, Lib.MPCurrent, Lib.MPWriteParameters, ADDRESSOF(page), SIZEOF(Lib.WriteParameterPage)) # ResOk THEN
 				tmp := dev.RequestSense(); RETURN ResErr;

+ 19 - 19
source/CDRecordLib.Mod

@@ -420,7 +420,7 @@ TYPE
 	END;
 	WriteSpeedDescrPtr* = POINTER TO WriteSpeedDescr;
 
-PROCEDURE GetNextAddress*(dev: Ata.DeviceATAPI; VAR adr: LONGINT): LONGINT;
+PROCEDURE GetNextAddress*(dev: Ata.DeviceATAPI; VAR adr: LONGINT): WORD;
 VAR
 	info: TrackInfo;
 	res: WORD;
@@ -432,12 +432,12 @@ BEGIN
 	RETURN res;
 END GetNextAddress;
 
-PROCEDURE ReadSessionInfo*(dev: Ata.DeviceATAPI; VAR info: SessionInfo): LONGINT;
+PROCEDURE ReadSessionInfo*(dev: Ata.DeviceATAPI; VAR info: SessionInfo): WORD;
 BEGIN
 	RETURN ReadToc(dev, FALSE, TCFormatSessionInfo, 0, ADDRESSOF(info), SIZEOF(SessionInfo));
 END ReadSessionInfo;
 
-PROCEDURE GetTrackDescriptor*(dev: Ata.DeviceATAPI; tno: LONGINT; VAR toc: TocDescriptor): LONGINT;
+PROCEDURE GetTrackDescriptor*(dev: Ata.DeviceATAPI; tno: LONGINT; VAR toc: TocDescriptor): WORD;
 VAR
 	buf: POINTER TO ARRAY OF CHAR;
 	res: WORD;
@@ -534,7 +534,7 @@ END SetAllocationLength;
 
 (* additional ATAPI commands *)
 
-PROCEDURE ModeSense*(dev: Ata.DeviceATAPI; pageControl, pageCode: LONGINT; adr: ADDRESS; len: LONGINT) : LONGINT;
+PROCEDURE ModeSense*(dev: Ata.DeviceATAPI; pageControl, pageCode: LONGINT; adr: ADDRESS; len: LONGINT) : WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -560,7 +560,7 @@ BEGIN
 	RETURN res;
 END ModeSense;
 
-PROCEDURE Blank*(dev: Ata.DeviceATAPI; immediate: BOOLEAN; type, tno: LONGINT): LONGINT;
+PROCEDURE Blank*(dev: Ata.DeviceATAPI; immediate: BOOLEAN; type, tno: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -584,7 +584,7 @@ BEGIN
 	RETURN res;
 END Blank;
 
-PROCEDURE SendOPCInformation*(dev: Ata.DeviceATAPI; doOPC: BOOLEAN): LONGINT;
+PROCEDURE SendOPCInformation*(dev: Ata.DeviceATAPI; doOPC: BOOLEAN): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -607,7 +607,7 @@ BEGIN
 	RETURN res;
 END SendOPCInformation;
 
-PROCEDURE GetConfiguration*(dev: Ata.DeviceATAPI; rt, start: LONGINT; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE GetConfiguration*(dev: Ata.DeviceATAPI; rt, start: LONGINT; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -633,7 +633,7 @@ BEGIN
 	RETURN res;
 END GetConfiguration;
 
-PROCEDURE SynchronizeCache*(dev: Ata.DeviceATAPI; immediate: BOOLEAN): LONGINT;
+PROCEDURE SynchronizeCache*(dev: Ata.DeviceATAPI; immediate: BOOLEAN): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -652,7 +652,7 @@ BEGIN
 	RETURN res;
 END SynchronizeCache;
 
-PROCEDURE ModeSelect*(dev: Ata.DeviceATAPI;  save: BOOLEAN; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE ModeSelect*(dev: Ata.DeviceATAPI;  save: BOOLEAN; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -677,7 +677,7 @@ BEGIN
 	RETURN res;
 END ModeSelect;
 
-PROCEDURE ReadDiscInformation*(dev: Ata.DeviceATAPI; dataType: LONGINT; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE ReadDiscInformation*(dev: Ata.DeviceATAPI; dataType: LONGINT; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -700,7 +700,7 @@ BEGIN
 	RETURN res;
 END ReadDiscInformation;
 
-PROCEDURE ReadToc*(dev: Ata.DeviceATAPI; msf: BOOLEAN; format, tno:  LONGINT; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE ReadToc*(dev: Ata.DeviceATAPI; msf: BOOLEAN; format, tno:  LONGINT; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -727,7 +727,7 @@ BEGIN
 	RETURN res;
 END ReadToc;
 
-PROCEDURE Verify*(dev: Ata.DeviceATAPI; lba, length: LONGINT): LONGINT;
+PROCEDURE Verify*(dev: Ata.DeviceATAPI; lba, length: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -751,7 +751,7 @@ BEGIN
 	RETURN res;
 END Verify;
 
-PROCEDURE ReadCD*(dev: Ata.DeviceATAPI; lba, length, adr, size, type, subChannel: LONGINT; flags: SET; dma: BOOLEAN): LONGINT;
+PROCEDURE ReadCD*(dev: Ata.DeviceATAPI; lba, length, adr, size, type, subChannel: LONGINT; flags: SET; dma: BOOLEAN): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -794,7 +794,7 @@ BEGIN
 	RETURN res;
 END ReadCD;
 
-PROCEDURE GetPerformance*(dev: Ata.DeviceATAPI; type, dataType, lba, maxDescr: LONGINT; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE GetPerformance*(dev: Ata.DeviceATAPI; type, dataType, lba, maxDescr: LONGINT; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -826,7 +826,7 @@ BEGIN
 	RETURN res;
 END GetPerformance;
 
-PROCEDURE ReadTrackInformation*(dev: Ata.DeviceATAPI; appendable: BOOLEAN; adrType, adrnr: LONGINT; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE ReadTrackInformation*(dev: Ata.DeviceATAPI; appendable: BOOLEAN; adrType, adrnr: LONGINT; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -856,7 +856,7 @@ BEGIN
 	RETURN res;
 END ReadTrackInformation;
 
-PROCEDURE CloseTrackSess*(dev: Ata.DeviceATAPI; immediate: BOOLEAN; func, trackNr: LONGINT): LONGINT;
+PROCEDURE CloseTrackSess*(dev: Ata.DeviceATAPI; immediate: BOOLEAN; func, trackNr: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -880,7 +880,7 @@ BEGIN
 	RETURN res;
 END CloseTrackSess;
 
-PROCEDURE ReadBufferCapacity*(dev: Ata.DeviceATAPI; block: BOOLEAN; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE ReadBufferCapacity*(dev: Ata.DeviceATAPI; block: BOOLEAN; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -905,7 +905,7 @@ BEGIN
 	RETURN res;
 END ReadBufferCapacity;
 
-PROCEDURE SetCDSpeed*(dev: Ata.DeviceATAPI; readSpeed, writeSpeed, rotControl: LONGINT): LONGINT;
+PROCEDURE SetCDSpeed*(dev: Ata.DeviceATAPI; readSpeed, writeSpeed, rotControl: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;
@@ -930,7 +930,7 @@ BEGIN
 	RETURN res;
 END SetCDSpeed;
 
-PROCEDURE SendCueSheet*(dev: Ata.DeviceATAPI; adr: ADDRESS; len: LONGINT): LONGINT;
+PROCEDURE SendCueSheet*(dev: Ata.DeviceATAPI; adr: ADDRESS; len: LONGINT): WORD;
 VAR
 	command: Ata.CommandPacket;
 	res: WORD;

+ 4 - 4
source/CDRecordUtils.Mod

@@ -751,7 +751,7 @@ BEGIN
 	dst[0] := CHR(x DIV 1000000H MOD 100H);
 END SetBE32;
 
-PROCEDURE Mp3ToWave*(srcFileName, destFileName : Strings.String; onConvertStatusChanged: StatusProc) : LONGINT;
+PROCEDURE Mp3ToWave*(srcFileName, destFileName : Strings.String; onConvertStatusChanged: StatusProc) : WORD;
 VAR
 	res: WORD;
 	srcFile, destFile : Files.File;
@@ -809,7 +809,7 @@ BEGIN
 
 END Mp3ToWave;
 
-PROCEDURE GetFreeSpace*(CONST destination: ARRAY OF CHAR; VAR freeSpace: LONGINT): LONGINT;
+PROCEDURE GetFreeSpace*(CONST destination: ARRAY OF CHAR; VAR freeSpace: LONGINT): WORD;
 VAR
 	fs: Files.FileSystem;
 	prefix, name: ARRAY MaxLen OF CHAR;
@@ -825,7 +825,7 @@ BEGIN
 	RETURN res;
 END GetFreeSpace;
 
-PROCEDURE IsReadOnly*(CONST destination: ARRAY OF CHAR; VAR readOnly: BOOLEAN): LONGINT;
+PROCEDURE IsReadOnly*(CONST destination: ARRAY OF CHAR; VAR readOnly: BOOLEAN): WORD;
 VAR
 	fs: Files.FileSystem;
 	prefix, name: ARRAY MaxLen OF CHAR;
@@ -841,7 +841,7 @@ BEGIN
 	RETURN res;
 END IsReadOnly;
 
-PROCEDURE GetDevice*(file: Files.File; VAR device: Disks.Device): LONGINT;
+PROCEDURE GetDevice*(file: Files.File; VAR device: Disks.Device): WORD;
 VAR
 	fs: Files.FileSystem;
 	res: WORD;

+ 1 - 1
source/FirewireLow.Mod

@@ -2576,7 +2576,7 @@ END Test1394;
 
 (** Scan the PCI for 1394 devices *)
 PROCEDURE ScanPCI(vendor,device: LONGINT);
-VAR index, bus, dev, fct,res,base,irq:LONGINT;
+VAR index, bus, dev, fct, base, irq: LONGINT; res: WORD;
 BEGIN
 	index := 0;
 	WHILE(PCI.FindPCIDevice(device, vendor, index, bus, dev, fct) = PCI.Done) (*?*)

+ 1 - 1
source/Intel8255x.Mod

@@ -816,7 +816,7 @@ END Remove;
 
 PROCEDURE ScanPCI(vendor, device: LONGINT);
 VAR
-	index, bus, dev, fct, res, irq, i: LONGINT;
+	index, bus, dev, fct, irq, i: LONGINT; res: WORD;
 	base: ADDRESS;
 	d: LinkDevice;
 	c: Controller;

+ 10 - 10
source/MakeIsoImages.Mod

@@ -832,7 +832,7 @@ TYPE
 		PROCEDURE Read*(startsec: LONGINT): LONGINT;
 		VAR
 			voldescr: PSVolumeDescriptor;
-			res, treeType: LONGINT;
+			res: WORD; treeType: LONGINT;
 			rootRec: DirectoryRecord;
 			root: Directory;
 			tmp, name: ARRAY MaxLen OF CHAR;
@@ -855,7 +855,7 @@ TYPE
 			RETURN ResOk;
 		END Read;
 
-		PROCEDURE ReadDir(parent: Directory): LONGINT;
+		PROCEDURE ReadDir(parent: Directory): WORD;
 		VAR
 			index, size, lba, len: LONGINT; res: WORD;
 			name : ARRAY MaxLen OF CHAR;
@@ -1220,7 +1220,7 @@ TYPE
 				END;
 			END GetSysType;
 
-			PROCEDURE WriteImages(w: Streams.Writer): LONGINT;
+			PROCEDURE WriteImages(w: Streams.Writer): WORD;
 			VAR
 				res : WORD;
 				cur: BCEntry;
@@ -1349,7 +1349,7 @@ BEGIN
 	END;
 END Pad;
 
-PROCEDURE WriteFiles(w: Streams.Writer; dir: Directory): LONGINT;
+PROCEDURE WriteFiles(w: Streams.Writer; dir: Directory): WORD;
 VAR
 	node: Node;
 	cur: Directory;
@@ -1588,7 +1588,7 @@ BEGIN
 	Strings.TrimRight(str, ' ');
 END ConvertIdentToUTF8;
 
-PROCEDURE MakeImageFromDir*(rootDir, isoDest: String; settings: IsoSettings; writeStatusChanged: Utils.StatusProc): LONGINT;
+PROCEDURE MakeImageFromDir*(rootDir, isoDest: String; settings: IsoSettings; writeStatusChanged: Utils.StatusProc): WORD;
 VAR
 	root: Directory;
 	isotree: DirectoryTree;
@@ -1603,7 +1603,7 @@ BEGIN
 	RETURN MakeImage(isotree, isoDest, settings);
 END MakeImageFromDir;
 
-PROCEDURE MakeImageFromTree*(root: Directory; isoDest: String; settings: IsoSettings; writeStatusChanged: Utils.StatusProc): LONGINT;
+PROCEDURE MakeImageFromTree*(root: Directory; isoDest: String; settings: IsoSettings; writeStatusChanged: Utils.StatusProc): WORD;
 VAR
 	isotree: DirectoryTree;
 BEGIN
@@ -1613,13 +1613,13 @@ BEGIN
 	RETURN MakeImage(isotree, isoDest, settings);
 END MakeImageFromTree;
 
-PROCEDURE MakeImage*(isotree: DirectoryTree; isoDest: String; settings: IsoSettings): LONGINT;
+PROCEDURE MakeImage*(isotree: DirectoryTree; isoDest: String; settings: IsoSettings): WORD;
 VAR
 	fOut: Files.File;
 	out: Files.Writer;
 	jtree : DirectoryTree;
 	isotable, jtable: PathTable;
-	lba, freeSpace, padding, res: LONGINT;
+	lba, freeSpace, padding: LONGINT; res: WORD;
 	pdescr, sdescr: PSVolumeDescriptor;
 	bdescr: BootRecord;
 	tdescr: SetTerminator;
@@ -1746,7 +1746,7 @@ BEGIN
 END DirExists;
 
 (* SaveImage is used to copy data cds *)
-PROCEDURE SaveImage*(dev: ATADisks.DeviceATAPI; startsec: LONGINT; CONST dest: ARRAY OF CHAR; onWriteStatusChanged: Utils.StatusProc): LONGINT;
+PROCEDURE SaveImage*(dev: ATADisks.DeviceATAPI; startsec: LONGINT; CONST dest: ARRAY OF CHAR; onWriteStatusChanged: Utils.StatusProc): WORD;
 VAR
 	sec, size: LONGINT; res: WORD;
 	buf: ARRAY TransferSize*SectorSize OF CHAR;
@@ -1793,7 +1793,7 @@ BEGIN
 	RETURN ResOk;
 END SaveImage;
 
-PROCEDURE GetVolumeDescriptor*(dev: ATADisks.DeviceATAPI; startsec: LONGINT; VAR descr: PSVolumeDescriptor; descrType: LONGINT): LONGINT;
+PROCEDURE GetVolumeDescriptor*(dev: ATADisks.DeviceATAPI; startsec: LONGINT; VAR descr: PSVolumeDescriptor; descrType: LONGINT): WORD;
 VAR
 	type: CHAR;
 	sec: LONGINT; res: WORD;

+ 1 - 1
source/MouseSerial.Mod

@@ -84,7 +84,7 @@ TYPE
 		dead : BOOLEAN;
 
 		(* Read a mouse event *)
-		PROCEDURE GetMouseEvent(VAR keys: SET;  VAR dx, dy: LONGINT): LONGINT;
+		PROCEDURE GetMouseEvent(VAR keys: SET;  VAR dx, dy: LONGINT): WORD;
 		VAR ch : CHAR; b : SET; res : WORD;
 		BEGIN
 			b := {};

+ 3 - 2
source/OSC.Mod

@@ -568,7 +568,8 @@ OSCBundle b:
 			BEGIN
 				RETURN returner # NIL;
 			END IsReturnable;
-			PROCEDURE Return*(p: OSCPacket): LONGINT; (* returns the packet p to the sender of the current packet *)
+
+			PROCEDURE Return*(p: OSCPacket): WORD; (* returns the packet p to the sender of the current packet *)
 			BEGIN
 				IF returner # NIL THEN
 					RETURN returner(p, returnerdata);
@@ -605,7 +606,7 @@ OSCBundle b:
 		OSCPacketArray* = POINTER TO ARRAY OF OSCPacket;
 
 		(* signature of return procedures *)
-		OSCReturnProc* = PROCEDURE {DELEGATE} (p: OSCPacket; data: OBJECT): LONGINT;
+		OSCReturnProc* = PROCEDURE {DELEGATE} (p: OSCPacket; data: OBJECT): WORD;
 
 
 		(* OSCMessage stores a single OSCMessage *)

+ 11 - 11
source/OSCNet.Mod

@@ -68,10 +68,10 @@ CONST
 TYPE
 	(* abstract class of all network clients *)
 	OSCClient = OBJECT
-		PROCEDURE Send*(p: OSC.OSCPacket): LONGINT;
+		PROCEDURE Send*(p: OSC.OSCPacket): WORD;
 		BEGIN HALT(NotImplemented); END Send;
 
-		PROCEDURE Receive*(VAR p: OSC.OSCPacket): LONGINT;
+		PROCEDURE Receive*(VAR p: OSC.OSCPacket): WORD;
 		BEGIN HALT(NotImplemented); END Receive;
 
 		PROCEDURE Close*;
@@ -105,7 +105,7 @@ TYPE
 		END InitUDP;
 
 		(* sends an OSCMessage or an OSCBundle to fip:fport. Returns the statuscode of UDP.Socket.Send *)
-		PROCEDURE Send*(p: OSC.OSCPacket): LONGINT;
+		PROCEDURE Send*(p: OSC.OSCPacket): WORD;
 		BEGIN
 			RETURN SendUDP(s, fip, fport, p);
 		END Send;
@@ -113,7 +113,7 @@ TYPE
 		(* receives a packet from the network. Only UDP packets from our partner are considered.
 			You can also supply a timeout in miliseconds. Use -1 for a infinite wait.
 			Returns Ok, ParseError or an UDP returncode (eg:. UDP.Timeout) *)
-		PROCEDURE Recieve*(VAR p: OSC.OSCPacket; timeout (* in ms *): LONGINT): LONGINT;
+		PROCEDURE Recieve*(VAR p: OSC.OSCPacket; timeout (* in ms *): LONGINT): WORD;
 		VAR
 			fip2: IP.Adr; fport2: LONGINT;
 			size: LONGINT;
@@ -185,7 +185,7 @@ TYPE
 		END InitUDPServer;
 
 		(* Returns an OSCMessage or an OSCBundle to the sender specified by data, which is indeed an instance of OSCUDPData *)
-		PROCEDURE return(p: OSC.OSCPacket; data: OBJECT): LONGINT;
+		PROCEDURE return(p: OSC.OSCPacket; data: OBJECT): WORD;
 		BEGIN
 			IF data IS OSCUDPData THEN
 				WITH data: OSCUDPData DO
@@ -257,13 +257,13 @@ TYPE
 
 		(* sends a packet to the connected OSCServer. Returns TCP.Ok if sent successfully, otherwise an TCP.* errorcode is
 			returned. *)
-		PROCEDURE Send*(p: OSC.OSCPacket): LONGINT;
+		PROCEDURE Send*(p: OSC.OSCPacket): WORD;
 		BEGIN
 			RETURN SendTCP(connection, p);
 		END Send;
 
 		(* receives a packet from the OSC Server. *)
-		PROCEDURE Receive*(VAR p: OSC.OSCPacket): LONGINT;
+		PROCEDURE Receive*(VAR p: OSC.OSCPacket): WORD;
 		BEGIN
 			RETURN ReceiveTCP(connection, p);
 		END Receive;
@@ -289,7 +289,7 @@ TYPE
 		END StartOSCAgent;
 
 		(* returns a packet to the current client. data is ignored *)
-		PROCEDURE return*(p: OSC.OSCPacket; data: OBJECT): LONGINT;
+		PROCEDURE return*(p: OSC.OSCPacket; data: OBJECT): WORD;
 		BEGIN
 			IF Trace THEN KernelLog.String('TCPServer.Return called IP: ');
 				IP.OutAdr(client.fip); KernelLog.String(' Port: '); KernelLog.Int(client.fport, 10);
@@ -341,7 +341,7 @@ TYPE
 
 
 
-	PROCEDURE SendTCP(client: TCP.Connection; p: OSC.OSCPacket): LONGINT;
+	PROCEDURE SendTCP(client: TCP.Connection; p: OSC.OSCPacket): WORD;
 	VAR
 		buffer: OSC.String;
 		size: ARRAY 4 OF CHAR;
@@ -358,7 +358,7 @@ TYPE
 		RETURN res;
 	END SendTCP;
 
-	PROCEDURE ReceiveTCP(client: TCP.Connection; VAR p: OSC.OSCPacket): LONGINT;
+	PROCEDURE ReceiveTCP(client: TCP.Connection; VAR p: OSC.OSCPacket): WORD;
 	VAR
 		res: WORD; len: LONGINT;
 		buffer: POINTER TO ARRAY OF CHAR;
@@ -383,7 +383,7 @@ TYPE
 		RETURN Ok;
 	END ReceiveTCP;
 
-	PROCEDURE SendUDP(s: UDP.Socket; fip: IP.Adr; fport: LONGINT; p: OSC.OSCPacket): LONGINT;
+	PROCEDURE SendUDP(s: UDP.Socket; fip: IP.Adr; fport: LONGINT; p: OSC.OSCPacket): WORD;
 	VAR
 		buffer: OSC.String;
 		res: WORD;

+ 1 - 1
source/RTL8139.Mod

@@ -519,7 +519,7 @@ TYPE
 (* Scan the PCI bus for the specified card. *)
 
 PROCEDURE ScanPCI(vendor, device, model: LONGINT);
-VAR index, bus, dev, fct, res, irq, i: LONGINT; base: ADDRESS; d: LinkDevice; c: Controller; name: Plugins.Name;
+VAR index, bus, dev, fct, irq, i: LONGINT; res: WORD; base: ADDRESS; d: LinkDevice; c: Controller; name: Plugins.Name;
 BEGIN
 	index := 0;
 	WHILE (PCI.FindPCIDevice(device, vendor, index, bus, dev, fct) = PCI.Done) & (installed < 10) DO

+ 1 - 1
source/RTL8169.Mod

@@ -1064,7 +1064,7 @@ TYPE
 
 (* Scan the PCI bus for the specified card. *)
 PROCEDURE ScanPCI(vendor, device: LONGINT);
-VAR index, bus, dev, fct, res, irq, i: LONGINT; base: ADDRESS; d: LinkDevice; c: Controller; name: Plugins.Name;
+VAR index, bus, dev, fct, irq, i: LONGINT; res: WORD; base: ADDRESS; d: LinkDevice; c: Controller; name: Plugins.Name;
 BEGIN
 	index := 0;
 	WHILE (PCI.FindPCIDevice(device, vendor, index, bus, dev, fct) = PCI.Done) & (installed < 16) DO

+ 1 - 1
source/TCP.Mod

@@ -1206,7 +1206,7 @@ END WriteTime;
 
 (* TCP error function. *)
 
-PROCEDURE Error(err, n: LONGINT; p: Connection);
+PROCEDURE Error(err: WORD; n: LONGINT; p: Connection);
 BEGIN
 	IF trace THEN
 		KernelLog.Enter; KernelLog.String("TCP: "); WriteTime(Kernel.GetTicks());

+ 1 - 1
source/TFTP.Mod

@@ -106,7 +106,7 @@ TYPE
 						Log(3, "; error "); LogInt(3, Get2(ack, 2)); Log(3, ": "); Log(3, msg)
 					END
 				ELSE
-					Log(3, "unknown error "); LogInt(3, res)
+					Log(3, "unknown error "); LogInt(3, LONGINT(res))
 				END;
 				LogExit(3)
 			UNTIL acked OR (res # Ok) OR (wait > MaxWait);

+ 4 - 4
source/TFTPServer.Mod

@@ -174,7 +174,7 @@ TYPE
 						acked := (res = Ok) & (PacketType(ack) = ACK) & (Get2(ack, 2) = blockNr) & (IP.AdrsEqual(ip, fip)) & (fport = port);
 						IF acked THEN Log(3, "got ack") ELSE Log(3, "ack failed") END
 					ELSE
-						Log(3, "unknown error "); LogInt(3, res)
+						Log(3, "unknown error "); LogInt(3, LONGINT(res))
 					END;
 					LogExit(3)
 				UNTIL acked OR (res # Ok) OR (wait > MaxWait)
@@ -333,7 +333,7 @@ TYPE
 								LogEnter(2); Log(2, TFTPId); Log(2, "read request: "); Log(2, errorMsg[1]); LogExit(2);
 								SendError(1, "", res)
 							ELSIF (res # Ok) THEN
-								LogEnter(2); Log(2, TFTPId); Log(2, "read request: "); Log(2, ": error "); LogInt(2, res); LogExit(2);
+								LogEnter(2); Log(2, TFTPId); Log(2, "read request: "); Log(2, ": error "); LogInt(2, LONGINT(res)); LogExit(2);
 								SendError(0, "", res)
 							ELSE
 								LogEnter(2); Log(2, TFTPId); Log(2, "read request: "); Log(2, ": transfer started"); LogExit(2)
@@ -350,7 +350,7 @@ TYPE
 									LogEnter(2); Log(2, TFTPId); Log(2, "write request: "); Log(2, errorMsg[6]); LogExit(2);
 									SendError(6, "", res)
 								ELSIF (res # Ok) THEN
-									LogEnter(2); Log(2, TFTPId); Log(2, "write request: "); Log(2, ": error "); LogInt(2, res); LogExit(2);
+									LogEnter(2); Log(2, TFTPId); Log(2, "write request: "); Log(2, ": error "); LogInt(2, LONGINT(res)); LogExit(2);
 									SendError(0, "", res)
 								ELSE
 									LogEnter(2); Log(2, TFTPId); Log(2, "write request: "); Log(2, ": transfer started"); LogExit(2)
@@ -364,7 +364,7 @@ TYPE
 				ELSIF (res = UDP.Timeout) THEN (* nothing *)
 				ELSE
 					Stop := TRUE;
-					LogEnter(2); Log(2, TFTPId); Log(2, "socket error "); LogInt(2, res); LogExit(2);
+					LogEnter(2); Log(2, TFTPId); Log(2, "socket error "); LogInt(2, LONGINT(res)); LogExit(2);
 				END
 			UNTIL Stop;
 		END;

+ 1 - 1
source/Usb.Mod

@@ -1419,7 +1419,7 @@ VAR configuration : ConfigurationDescriptor; i, j, idx, num, intfNbr : LONGINT;
 
 	(* Return the number of alternate interfaces of interface <intf> starting at idx *)
 	PROCEDURE NumAltInterfaces(intf, idx : LONGINT) : LONGINT;
-	VAR res : WORD;
+	VAR res := 0: LONGINT;
 	BEGIN
 		WHILE(idx + 3 < LEN(buffer)) DO
 			IF (ORD(buffer[idx+1]) = DescriptorInterface) & (ORD(buffer[idx+2]) = intf) & (ORD(buffer[idx+3]) # 0) THEN

+ 2 - 1
source/UsbHidDriver.Mod

@@ -1119,7 +1119,8 @@ TYPE
 		VAR
 			joystickColl		: UsbHidReport.HidCollection;
 			temp			: UsbHidReport.HidReport;
-			res,i			: WORD;
+			res			: WORD;
+			i:				LONGINT;
 		BEGIN
 			(*get joystick collection: joystick collection uses UsagePage(Generic Desktop Controlsl)->1 and Usage(Joystick)->4*)
 			joystickColl := reportManager.GetCollection(UsagePage.GenericDesktopPage,4);

+ 19 - 19
source/UsbStorageBase.Mod

@@ -291,14 +291,14 @@ TYPE
 		timer : Kernel.Timer;
 
 		(** Transport layer specific reset procedure *)
-		PROCEDURE Reset*(timeout : LONGINT) : LONGINT;
+		PROCEDURE Reset*(timeout : LONGINT) : WORD;
 		BEGIN
 			HALT(301); RETURN 0; (* abstract *)
 		END Reset;
 
 		(** Transport layer specific transfer procedure *)
 		PROCEDURE Transport*(cmd : ARRAY OF CHAR; cmdlen : LONGINT; dir :  SET;
-			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : LONGINT;
+			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : WORD;
 		BEGIN
 			HALT(301); RETURN 0;  (* abstract *)
 		END Transport;
@@ -310,7 +310,7 @@ TYPE
 		END GetMaxLun;
 
 		(* UFI command: Test whether the specified logical unit is ready *)
-		PROCEDURE TestUnitReady(lun : LONGINT) : LONGINT;
+		PROCEDURE TestUnitReady(lun : LONGINT) : WORD;
 		VAR cmd : ARRAY 12 OF CHAR; i, ignore : LONGINT;
 		BEGIN
 			cmd[0] := CHR(UfiTestUnitReady);
@@ -320,8 +320,8 @@ TYPE
 		END TestUnitReady;
 
 		(* Issues TestUnitReady commands until device is ready or an error occurs *)
-		PROCEDURE WaitForReady(lun, timeout : LONGINT) : LONGINT;
-		VAR retry, res : LONGINT;
+		PROCEDURE WaitForReady(lun, timeout : LONGINT) : WORD;
+		VAR retry : LONGINT; res : WORD;
 		BEGIN
 			IF Debug.Trace & Debug.traceScRequests THEN KernelLog.String("UsbStorageBase: WaitForReady..."); KernelLog.Ln; END;
 			retry := 0;
@@ -345,8 +345,8 @@ TYPE
 		(* UFI command: Start/Stop Unit. 														*)
 		(* Note: Since UFI devices control the motor on/off themselves, it's not implemented here.	*)
 		(* We just use the command to eject the media, thus the name							*)
-		PROCEDURE EjectMedia(lun : LONGINT) : LONGINT;
-		VAR cmd, data : ARRAY 12 OF CHAR; i, tlen, res : LONGINT;
+		PROCEDURE EjectMedia(lun : LONGINT) : WORD;
+		VAR cmd, data : ARRAY 12 OF CHAR; i, tlen : LONGINT; res : WORD;
 		BEGIN
 			cmd[0] := CHR(UfiStartStop);
 			cmd[1] := CHR(LSH(lun, 5));
@@ -357,8 +357,8 @@ TYPE
 		END EjectMedia;
 
 		(* UFI command: Prevent/Allow Medium Removal *)
-		PROCEDURE PreventMediumRemoval(lun : LONGINT; prevent : BOOLEAN) : LONGINT;
-		VAR cmd, data : ARRAY 12 OF CHAR; i, tlen, res : LONGINT;
+		PROCEDURE PreventMediumRemoval(lun : LONGINT; prevent : BOOLEAN) : WORD;
+		VAR cmd, data : ARRAY 12 OF CHAR; i, tlen : LONGINT; res : WORD;
 		BEGIN
 			cmd[0] := CHR(UfiAllowRemoval);
 			cmd[1] := CHR(LSH(lun, 5));
@@ -369,8 +369,8 @@ TYPE
 		END PreventMediumRemoval;
 
 		(* UFI command: Request UFI device to do a reset or perform a self-test *)
-		PROCEDURE SendDiagnostic(lun : LONGINT) : LONGINT;
-		VAR cmd, data : ARRAY 12 OF CHAR; i, tlen, res : LONGINT;
+		PROCEDURE SendDiagnostic(lun : LONGINT) : WORD;
+		VAR cmd, data : ARRAY 12 OF CHAR; i, tlen : LONGINT; res : WORD;
 		BEGIN
 			cmd[0] := CHR(UfiSendDiag);
 			cmd[1] := CHR(SYSTEM.VAL(LONGINT, SYSTEM.VAL(SET, LSH(lun, 5)) + {2}));
@@ -380,8 +380,8 @@ TYPE
 		END SendDiagnostic;
 
 		(* UFI command: Get the number of blocks and the blocksize of the specified logical unit *)
-		PROCEDURE ReadCapacity(lun : LONGINT; VAR blocks, blocksize : LONGINT) : LONGINT;
-		VAR cmd, data : ARRAY 12 OF CHAR; res, i, tlen : LONGINT;
+		PROCEDURE ReadCapacity(lun : LONGINT; VAR blocks, blocksize : LONGINT) : WORD;
+		VAR cmd, data : ARRAY 12 OF CHAR; res: WORD;  i, tlen : LONGINT;
 		BEGIN
 			IF Debug.Trace & Debug.traceInfo THEN KernelLog.String("UsbStorage: ReadCapacity: "); KernelLog.Ln; END;
 			cmd[0] := CHR(UfiReadCapacity);
@@ -412,7 +412,7 @@ TYPE
 
 		(* UFI command: Inquiry the specified locigal unit; Returns NIL in error case *)
 		PROCEDURE Inquiry(lun : LONGINT) : InquiryResult;
-		VAR cmd : ARRAY 12 OF CHAR; data : ARRAY 36 OF CHAR; result : InquiryResult; i, j, tlen, res : LONGINT;
+		VAR cmd : ARRAY 12 OF CHAR; data : ARRAY 36 OF CHAR; result : InquiryResult; i, j, tlen : LONGINT; res : WORD;
 		BEGIN
 			IF Debug.Trace & Debug.traceInfo THEN
 				KernelLog.String("UsbStorage: Inquiry logical device "); KernelLog.Int(lun, 0); KernelLog.String("... "); KernelLog.Ln;
@@ -458,7 +458,7 @@ TYPE
 
 		(* The mode sense command allows the UFI device to report medium or device parameters to the host *)
 		PROCEDURE ModeSense(lun, pagecontrol, page, length : LONGINT) : FlexibleDiskPage;
-		VAR cmd : ARRAY 12 OF CHAR; data : Usbdi.BufferPtr; actLen, res : LONGINT; fdp : FlexibleDiskPage;
+		VAR cmd : ARRAY 12 OF CHAR; data : Usbdi.BufferPtr; actLen : LONGINT; res : WORD; fdp : FlexibleDiskPage;
 
 			(* page[index] is first byte of flexible disk page *)
 			PROCEDURE ParseFlexibleDiskPage(page : Usbdi.BufferPtr; index : LONGINT) : FlexibleDiskPage;
@@ -528,12 +528,12 @@ TYPE
 
 		(* UFI command: The Request Sense command instructs the UFI device to transfer sense data to the host for
 		 * the specified logical unit *)
-		PROCEDURE RequestSense(lun, cmdlen : LONGINT) : LONGINT;
+		PROCEDURE RequestSense(lun, cmdlen : LONGINT) : WORD;
 		VAR
 			cmd : ARRAY 12 OF CHAR; data : ARRAY 36 OF CHAR;
 			key, asc, ascq : CHAR;
 			information : LONGINT;
-			i, tlen, res : LONGINT;
+			i, tlen : LONGINT; res : WORD;
 		BEGIN
 			IF Debug.Trace & Debug.traceSensing THEN KernelLog.String("UsbStorage: Doing auto sense..."); KernelLog.Ln; END;
 			IF (transportProtocol = ProtocolUTS) OR (transportProtocol = ProtocolRBC) THEN
@@ -649,9 +649,9 @@ TYPE
 
 		(* Generic Transport Handler  *)
 		PROCEDURE InvokeTransport (cmd : ARRAY OF CHAR; cmdlen : INTEGER; dir : SET;
-			VAR data : ARRAY OF CHAR; ofs, datalen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : LONGINT;
+			VAR data : ARRAY OF CHAR; ofs, datalen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : WORD;
 		VAR
-			sensecmdlen, res, retry, i : LONGINT; forceRetry : BOOLEAN;
+			sensecmdlen, retry, i : LONGINT; res: WORD; forceRetry : BOOLEAN;
 		BEGIN {EXCLUSIVE}
 			(* here one could add additional stuff for the different protocols *)
 			IF transportProtocol = ProtocolUFI THEN

+ 2 - 2
source/UsbStorageBot.Mod

@@ -27,7 +27,7 @@ TYPE
 		(* Perform reset recovery, i.e. send Bulk-Only Mass Storage Reset command via default control pipe and 	*)
 		(* then clear the EndpointHalt feature of the bulk in and bulk out endpoints of the USB device. The request 	*)
 		(* shall ready the device for the next CBW from the host. See [2], pages 7 & 16								*)
-		PROCEDURE Reset*(timeout : LONGINT) : LONGINT;
+		PROCEDURE Reset*(timeout : LONGINT) : WORD;
 		VAR critical : BOOLEAN; status : Usbdi.Status;
 		BEGIN
 			IF Debug.Trace & Debug.traceScRequests THEN KernelLog.String("UsbStorage: Doing reset recovery ... "); END;
@@ -77,7 +77,7 @@ TYPE
 		(*	2. Dataphase (optional)																				*)
 		(*	3. Receive command status word (CSW) from device 													*)
 		PROCEDURE Transport*(cmd : ARRAY OF CHAR; cmdlen : LONGINT; dir :  SET;
-			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : LONGINT;
+			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : WORD;
 		VAR status : Usbdi.Status; i, residual : LONGINT;
 		BEGIN (* No concurrency allowed *)
 			ASSERT((cmdlen > 0) & (cmdlen <= 16)); (* [2], page 14 *)

+ 2 - 2
source/UsbStorageCbi.Mod

@@ -44,7 +44,7 @@ TYPE
 			RETURN device.Request(Usbdi.ToDevice + Usbdi.Class + Usbdi.Interface, 0, 0, interface.bInterfaceNumber, cmdlen, cmd);
 		END AcceptCommand;
 
-		PROCEDURE Reset*(timeout : LONGINT) : LONGINT;
+		PROCEDURE Reset*(timeout : LONGINT) : WORD;
 		VAR buffer, interruptData : Usbdi.BufferPtr; status : Usbdi.Status; i : LONGINT;
 		BEGIN
 			IF Debug.Trace & Debug.traceScRequests THEN KernelLog.String("UsbStorageCbi: Sending CB/I reset ControlTransfer"); KernelLog.Ln; END;
@@ -89,7 +89,7 @@ TYPE
 		END Reset;
 
 		PROCEDURE Transport*(cmd : ARRAY OF CHAR; cmdlen : LONGINT; dir : SET;
-			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : LONGINT;
+			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : WORD;
 		VAR status : Usbdi.Status;	 interruptData : Usbdi.BufferPtr; blockStatus : LONGINT;
 		BEGIN
 			IF Debug.Trace & Debug.traceScTransfers THEN KernelLog.String("UsbStorageCbi: Sending TransportCB/I Control"); KernelLog.Ln; END;

+ 13 - 13
source/UsbStorageScm.Mod

@@ -38,7 +38,7 @@ TYPE
 		END ScmShortPack;
 
 		PROCEDURE ScmSendControl(dir : SET; req, reqtyp, value, index : LONGINT; VAR buffer : Usbdi.Buffer;
-			ofs, bufferlen, timeout : LONGINT) : LONGINT;
+			ofs, bufferlen, timeout : LONGINT) : WORD;
 		VAR status : Usbdi.Status; 	ignore : LONGINT;
 		BEGIN
 			IF Debug.Trace & Debug.traceScTransfers THEN
@@ -144,7 +144,7 @@ TYPE
 			RETURN Base.ResOk;
 			END ScmBulkTransport;
 
-		PROCEDURE ScmWaitNotBusy(timeout : LONGINT) : LONGINT;
+		PROCEDURE ScmWaitNotBusy(timeout : LONGINT) : WORD;
 		VAR status : CHAR; res : WORD;
 		BEGIN
 			LOOP
@@ -170,7 +170,7 @@ TYPE
 			RETURN Base.ResTimeout;
 		END ScmWaitNotBusy;
 
-		PROCEDURE ScmReadUserIO(VAR dataflags: CHAR; timeout : LONGINT) : LONGINT;
+		PROCEDURE ScmReadUserIO(VAR dataflags: CHAR; timeout : LONGINT) : WORD;
 		VAR res : WORD;
 		BEGIN
 			res := ScmSendControl(Base.DataIn, 82H, 0C0H, 0, 0, buffer^, 0, 1, timeout);
@@ -178,12 +178,12 @@ TYPE
 			RETURN res;
 		END ScmReadUserIO;
 
-		PROCEDURE ScmWriteUserIO(enableflags, dataflags: CHAR; timeout : LONGINT) : LONGINT;
+		PROCEDURE ScmWriteUserIO(enableflags, dataflags: CHAR; timeout : LONGINT) : WORD;
 		BEGIN
 			RETURN ScmSendControl(Base.DataOut, 82H, 40H, ScmShortPack(enableflags, dataflags), 0, Usbdi.NoData, 0, 0, timeout);
 		END ScmWriteUserIO;
 
-		PROCEDURE ScmRead(access, reg : CHAR; VAR content: CHAR; timeout : LONGINT) : LONGINT;
+		PROCEDURE ScmRead(access, reg : CHAR; VAR content: CHAR; timeout : LONGINT) : WORD;
 		VAR res : WORD;
 		BEGIN
 			res := ScmSendControl(Base.DataIn, ORD(access), 0C0H, ORD(reg), 0, buffer^, 0, 1, timeout);
@@ -191,14 +191,14 @@ TYPE
 			RETURN res;
 		END ScmRead;
 
-		PROCEDURE ScmWrite(access, reg, content : CHAR; timeout : LONGINT) : LONGINT;
+		PROCEDURE ScmWrite(access, reg, content : CHAR; timeout : LONGINT) : WORD;
 		BEGIN
 			access := SYSTEM.VAL(CHAR, SYSTEM.VAL(SET, access) + {0});
 			RETURN ScmSendControl(Base.DataOut, ORD(access), 040H, ScmShortPack(reg, content), 0, Usbdi.NoData, 0, 0, timeout);
 		END ScmWrite;
 
-		PROCEDURE ScmMultipleWrite(access : CHAR; VAR registers, dataout: ARRAY OF CHAR; numregs,  timeout : LONGINT) : LONGINT;
-		VAR res, i, tlen : LONGINT;
+		PROCEDURE ScmMultipleWrite(access : CHAR; VAR registers, dataout: ARRAY OF CHAR; numregs,  timeout : LONGINT) : WORD;
+		VAR res: WORD; i, tlen : LONGINT;
 		BEGIN
 			IF numregs > 7 THEN
 				IF Debug.Level >= Debug.Errors THEN KernelLog.String("UsbStorage: ScmMultipleWrite: Numregs > 7."); KernelLog.Ln;END;
@@ -227,7 +227,7 @@ TYPE
 			RETURN ScmWaitNotBusy(timeout);
 		END ScmMultipleWrite;
 
-		PROCEDURE ScmReadBlock(access, reg : CHAR; VAR content : Usbdi.Buffer; ofs, len: LONGINT; VAR tlen : LONGINT; timeout : LONGINT): LONGINT;
+		PROCEDURE ScmReadBlock(access, reg : CHAR; VAR content : Usbdi.Buffer; ofs, len: LONGINT; VAR tlen : LONGINT; timeout : LONGINT): WORD;
 		VAR res : WORD;
 		BEGIN
 			command[0] := 0C0X;
@@ -246,7 +246,7 @@ TYPE
 			RETURN res;
 		END ScmReadBlock;
 
-		PROCEDURE ScmWriteBlock(access, reg : CHAR; VAR content : Usbdi.Buffer; ofs, len : LONGINT; VAR tlen : LONGINT; timeout : LONGINT): LONGINT;
+		PROCEDURE ScmWriteBlock(access, reg : CHAR; VAR content : Usbdi.Buffer; ofs, len : LONGINT; VAR tlen : LONGINT; timeout : LONGINT): WORD;
 		VAR res : WORD;
 		BEGIN
 			command[0] := 40X;
@@ -269,7 +269,7 @@ TYPE
 
 		PROCEDURE ScmRWBlockTest(access : CHAR; VAR registers, dataout : ARRAY OF CHAR;
 			numregs :INTEGER; datareg, statusreg, atapitimeout, qualifier : CHAR; dir : SET; VAR content : Usbdi.Buffer;
-			ofs, contentlen: LONGINT; VAR tlen : LONGINT; timeout : LONGINT): LONGINT;
+			ofs, contentlen: LONGINT; VAR tlen : LONGINT; timeout : LONGINT): WORD;
 		VAR
 			tmpreg : CHAR;
 			status : CHAR;
@@ -492,10 +492,10 @@ TYPE
 		END Initialization;
 
 		PROCEDURE Transport*(cmd : ARRAY OF CHAR; cmdlen : LONGINT; dir : SET;
-			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : LONGINT;
+			VAR buffer : ARRAY OF CHAR; ofs, bufferlen : LONGINT; VAR tlen : LONGINT; timeout : LONGINT) : WORD;
 		VAR
 			registers, data : ARRAY 32 OF CHAR;
-			i, res : LONGINT;
+			i : LONGINT; res : WORD;
 			status : CHAR;
 			atapilen, tmplen, sector, transfered : LONGINT;
 			j : LONGINT;

+ 4 - 4
source/WMCDRecorder.Mod

@@ -234,7 +234,7 @@ TYPE
 			sizeLabel.caption.SetAOC(text);
 		END UpdateSize;
 
-		PROCEDURE IdentifyRecorders(): LONGINT;
+		PROCEDURE IdentifyRecorders(): WORD;
 		VAR
 			res: WORD;
 			dlg: WaitDialog;
@@ -731,7 +731,7 @@ TYPE
 
 		PROCEDURE Convert(project: AudioProject; dest: String): LONGINT;
 		VAR
-			no, res: LONGINT;
+			no: LONGINT; res: WORD;
 			cur: Node;
 			filename, path, tmp: ARRAY MaxLen OF CHAR;
 		BEGIN
@@ -932,9 +932,9 @@ TYPE
 			END;
 		END BurnDataHandler;
 
-		PROCEDURE Record(compilation: CDRecord.Compilation; recorder: CDRecord.CDRecorder; settings: CDRecord.BurnSettings): LONGINT;
+		PROCEDURE Record(compilation: CDRecord.Compilation; recorder: CDRecord.CDRecorder; settings: CDRecord.BurnSettings): WORD;
 		VAR
-			res, tmp : LONGINT;
+			res, tmp : WORD;
 			msg, str : ARRAY MaxLen OF CHAR;
 			waitDlg: WaitDialog;
 			timer: Timer;

+ 1 - 1
source/YMF754.Mod

@@ -1616,7 +1616,7 @@ END GetPhysicalAdr;
 (* Scan the PCI bus for the specified card *)
 PROCEDURE ScanPCI(vendor, device: LONGINT; name: Plugins.Name; CntrlInst1E: BOOLEAN);
 VAR
-	len, res, reg, index: LONGINT;
+	len, reg, index: LONGINT; res: WORD;
 	bus, dev, fct: LONGINT;
 	base, irq: LONGINT;
 	d: Driver;