From 46bb010ca7c5eb04551c030105f9999ca80e472f Mon Sep 17 00:00:00 2001 From: tobigun Date: Sun, 8 Jun 2008 15:33:48 +0000 Subject: - set svn:eol-style to native - removed some svn:executable properties from non-executable files git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1144 b956fd51-792f-4845-bead-9b4dfca2ff2c --- Game/Code/lib/zlportio/Example/mainform.pas | 410 ++++++++++++++-------------- 1 file changed, 205 insertions(+), 205 deletions(-) (limited to 'Game/Code/lib/zlportio/Example/mainform.pas') diff --git a/Game/Code/lib/zlportio/Example/mainform.pas b/Game/Code/lib/zlportio/Example/mainform.pas index 295958c2..2b26228e 100644 --- a/Game/Code/lib/zlportio/Example/mainform.pas +++ b/Game/Code/lib/zlportio/Example/mainform.pas @@ -1,205 +1,205 @@ -{$A-,H+} -unit mainform; - -interface - -uses - Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, - StdCtrls,zlportio, ComCtrls, shellapi,rdtsc; - -type - TMain = class(TForm) - lb1: TLabel; - ePort: TEdit; - lb2: TLabel; - eData: TEdit; - eRData: TEdit; - btnExit: TButton; - lb3: TLabel; - coDataType: TComboBox; - Lb4: TLabel; - gb1: TGroupBox; - sbBar: TStatusBar; - lb5: TLabel; - btnWrite: TButton; - btnRead: TButton; - cbDirect: TCheckBox; - llbWWW: TLabel; - procedure btnExitClick(Sender: TObject); - procedure ePortKeyUp(Sender: TObject; var Key: Word; - Shift: TShiftState); - procedure ePortKeyPress(Sender: TObject; var Key: Char); - procedure FormCreate(Sender: TObject); - procedure coDataTypeChange(Sender: TObject); - procedure ePortKeyDown(Sender: TObject; var Key: Word; - Shift: TShiftState); - procedure btnWriteClick(Sender: TObject); - procedure eDataKeyDown(Sender: TObject; var Key: Word; - Shift: TShiftState); - procedure btnReadClick(Sender: TObject); - procedure cbDirectClick(Sender: TObject); - procedure llbWWWClick(Sender: TObject); - private - { Private declarations } - public - { Public declarations } - procedure setrdata(const Data:dword); - function str2int(const value:string;const HEX:boolean):integer; - end; - -var - Main: TMain; -implementation - -{$R *.DFM} -{$R-} - -function TMain.str2int(const value:string;const HEX:boolean):integer; -begin - if HEX then - result := strtoint('$' + value) - else - result := strtoint(value); -end; - - -procedure TMain.btnExitClick(Sender: TObject); -begin - close; -end; - -procedure TMain.ePortKeyUp(Sender: TObject; var Key: Word; - Shift: TShiftState); -begin -try - Case key of - 38: begin - key := 0; - end; - 40: begin - key := 0; - end - end; -except -end; -end; - -procedure TMain.ePortKeyPress(Sender: TObject; var Key: Char); -begin - // filter on hex - if pos(key,#13#8'0123456789abcdefABCDEF')=0 then - key := #0; -end; - -procedure TMain.FormCreate(Sender: TObject); -begin - coDataType.itemindex :=0; - coDataType.Tag := 2; - if ZLIOStarted then - sbBar.SimpleText := 'Driver successfully started !' - else - sbBar.SimpleText := 'Couldnt start driver. Something wrong !'; -end; - -procedure TMain.coDataTypeChange(Sender: TObject); -var s:string; -begin - coDataType.Tag := 2 shl (coDataType.itemindex); - erdata.MaxLength := coDataType.Tag; - edata.MaxLength := coDataType.Tag; - s := edata.Text; - delete(s,1,length(s)-coDataType.Tag); - edata.text := s; -end; - -procedure TMain.ePortKeyDown(Sender: TObject; var Key: Word; - Shift: TShiftState); -var Port,data:dword; -begin -try - try - Port := str2int(ePort.Text,true); - except - Port := 0; - end; - Case key of - 13: begin - zlioportwrite(port,coDataType.itemindex,str2int(eData.Text, true)); - end; - 38: begin - inc(Port); - ePort.Text := inttohex(Port,3); - key := 0; - end; - 40: begin - if port > 0 then - dec(Port); - ePort.Text := inttohex(Port,3); - key := 0; - end - end; - setthreadpriority(GetCurrentThread,THREAD_PRIORITY_TIME_CRITICAL); - data := zlioportread(Port,coDataType.itemindex); - setrdata(data); -except -end; - -end; - -procedure TMain.setrdata(const Data:dword); -begin - erData.Text := inttohex(Data,coDataType.Tag); -end; - -procedure TMain.btnWriteClick(Sender: TObject); -var i:word; -begin - i := 13; - ePortKeyDown( self,i,[]) -end; - - - -procedure TMain.eDataKeyDown(Sender: TObject; var Key: Word; - Shift: TShiftState); -var data:dword; -begin - try - Data := str2int(eData.Text,true); - except Data := 0; end; - Case key of - 13: begin - ePortKeyDown( self,key,[]) - end; - 38: begin - inc(Data); - eData.Text := inttohex(Data,coDataType.Tag); - key := 0; - end; - 40: begin - dec(Data); - eData.Text := inttohex(Data,coDataType.Tag); - key := 0; - end - end; - -end; - -procedure TMain.btnReadClick(Sender: TObject); -var k:word; -begin - k := 0; - ePortKeyDown(self, k,[]); -end; - -procedure TMain.cbDirectClick(Sender: TObject); -begin -zliosetiopm(cbDirect.Checked); -end; - -procedure TMain.llbWWWClick(Sender: TObject); -begin - shellexecute( 0,'open','http://www.specosoft.com/update/portio_15.htm',nil,nil,SW_SHOW); -end; - -end. +{$A-,H+} +unit mainform; + +interface + +uses + Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, + StdCtrls,zlportio, ComCtrls, shellapi,rdtsc; + +type + TMain = class(TForm) + lb1: TLabel; + ePort: TEdit; + lb2: TLabel; + eData: TEdit; + eRData: TEdit; + btnExit: TButton; + lb3: TLabel; + coDataType: TComboBox; + Lb4: TLabel; + gb1: TGroupBox; + sbBar: TStatusBar; + lb5: TLabel; + btnWrite: TButton; + btnRead: TButton; + cbDirect: TCheckBox; + llbWWW: TLabel; + procedure btnExitClick(Sender: TObject); + procedure ePortKeyUp(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure ePortKeyPress(Sender: TObject; var Key: Char); + procedure FormCreate(Sender: TObject); + procedure coDataTypeChange(Sender: TObject); + procedure ePortKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure btnWriteClick(Sender: TObject); + procedure eDataKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); + procedure btnReadClick(Sender: TObject); + procedure cbDirectClick(Sender: TObject); + procedure llbWWWClick(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + procedure setrdata(const Data:dword); + function str2int(const value:string;const HEX:boolean):integer; + end; + +var + Main: TMain; +implementation + +{$R *.DFM} +{$R-} + +function TMain.str2int(const value:string;const HEX:boolean):integer; +begin + if HEX then + result := strtoint('$' + value) + else + result := strtoint(value); +end; + + +procedure TMain.btnExitClick(Sender: TObject); +begin + close; +end; + +procedure TMain.ePortKeyUp(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin +try + Case key of + 38: begin + key := 0; + end; + 40: begin + key := 0; + end + end; +except +end; +end; + +procedure TMain.ePortKeyPress(Sender: TObject; var Key: Char); +begin + // filter on hex + if pos(key,#13#8'0123456789abcdefABCDEF')=0 then + key := #0; +end; + +procedure TMain.FormCreate(Sender: TObject); +begin + coDataType.itemindex :=0; + coDataType.Tag := 2; + if ZLIOStarted then + sbBar.SimpleText := 'Driver successfully started !' + else + sbBar.SimpleText := 'Couldnt start driver. Something wrong !'; +end; + +procedure TMain.coDataTypeChange(Sender: TObject); +var s:string; +begin + coDataType.Tag := 2 shl (coDataType.itemindex); + erdata.MaxLength := coDataType.Tag; + edata.MaxLength := coDataType.Tag; + s := edata.Text; + delete(s,1,length(s)-coDataType.Tag); + edata.text := s; +end; + +procedure TMain.ePortKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +var Port,data:dword; +begin +try + try + Port := str2int(ePort.Text,true); + except + Port := 0; + end; + Case key of + 13: begin + zlioportwrite(port,coDataType.itemindex,str2int(eData.Text, true)); + end; + 38: begin + inc(Port); + ePort.Text := inttohex(Port,3); + key := 0; + end; + 40: begin + if port > 0 then + dec(Port); + ePort.Text := inttohex(Port,3); + key := 0; + end + end; + setthreadpriority(GetCurrentThread,THREAD_PRIORITY_TIME_CRITICAL); + data := zlioportread(Port,coDataType.itemindex); + setrdata(data); +except +end; + +end; + +procedure TMain.setrdata(const Data:dword); +begin + erData.Text := inttohex(Data,coDataType.Tag); +end; + +procedure TMain.btnWriteClick(Sender: TObject); +var i:word; +begin + i := 13; + ePortKeyDown( self,i,[]) +end; + + + +procedure TMain.eDataKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +var data:dword; +begin + try + Data := str2int(eData.Text,true); + except Data := 0; end; + Case key of + 13: begin + ePortKeyDown( self,key,[]) + end; + 38: begin + inc(Data); + eData.Text := inttohex(Data,coDataType.Tag); + key := 0; + end; + 40: begin + dec(Data); + eData.Text := inttohex(Data,coDataType.Tag); + key := 0; + end + end; + +end; + +procedure TMain.btnReadClick(Sender: TObject); +var k:word; +begin + k := 0; + ePortKeyDown(self, k,[]); +end; + +procedure TMain.cbDirectClick(Sender: TObject); +begin +zliosetiopm(cbDirect.Checked); +end; + +procedure TMain.llbWWWClick(Sender: TObject); +begin + shellexecute( 0,'open','http://www.specosoft.com/update/portio_15.htm',nil,nil,SW_SHOW); +end; + +end. -- cgit v1.2.3