- blinking a led: Delphi PCHAR->CP array?

From: [at]} <Koen>
Date: Tue, 30 May 2006 01:18:07 +0200

----boundary-LibPST-iamunique-220256095_-_-
Content-type: text/plain

Hello Frans,

I suppose
        TYPE PtrSTR* = POINTER TO ARRAY [untagged] OF SHORTCHAR;
is what you need.

Found this in module WinApi.
I seem to remember PChar was added to Borland pascal in order to make interfacing to Windows easier.

Brgds,
Koen.

On Sat, 27 May 2006 00:21:06 +0200, you wrote:

>Hello Blackboxers,
>
>I want to blink a led using using Kainka's "PC Interfaces under Windows".
>The book comes with a dll - PORT.DLL - which enables communication with
>the serial ports under XP.
>With Delphi the led blinks. In BlackBox, I can't get it light. I suspect
>that my way of translating the delphi PCHAR-type
>into an array is not correct. Can I use an array as an null terminated
>string? Anyone some advice?
>
>In delphi, opening the com-port is done as follows.
>
>Function OPENCOM(S:PCHAR):Integer;stdcall; external PORT.DLL;
>
>for example: OpenCom (Pchar('COM1:9600,N,8,1'));
>OpemCom returns a 1 when connected, 0 when failed.
>
>Following my the translation of the function to component pascal
>
>INTERFACE:
>constr* = ARRAY 18 OF CHAR;
>PROCEDURE opencom* ["OPENCOM"]
>(Constr:constr) : INTEGER;
>
>TESTFUNCTION:
>open := PortDLL.opencom("COM1:9600,N,8,1");
>
>
>
>The two modules I've used.
>-----------------------
>INTERFACE
>----------------------
>MODULE PortDLL ["PORT.DLL"];
>IMPORT SYSTEM;
>TYPE
>
>constr* = ARRAY 18 OF CHAR;
>
>PROCEDURE opencom* ["OPENCOM"]
>(Constr:constr) : INTEGER;
>
>END PortDLL.
>
>----------------------------------
>TESTMODULE
>----------------------------------
>MODULE TestPort;
>
> IMPORT PortDLL, StdLog;
> VAR open: INTEGER;
>
> PROCEDURE Do*;
> BEGIN
> open := 3;
> open := PortDLL.opencom("COM1:9600,N,8,1");
> IF open = 1 THEN
> StdLog.String("Opening COM1 successful. "); StdLog.Ln
> END;
> IF open = 0 THEN
> StdLog.String("Opening COM1 failed."); StdLog.Ln
> END;
> END Do;
>
>END TestPort.
>-----------------------------------
>
>--- BlackBox
>--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy

--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy



----boundary-LibPST-iamunique-220256095_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhlbGxvIEZyYW5zLFxwYXINClxwYXINCkkgc3Vw
cG9zZSBccGFyDQpcdGFiIFRZUEUgUHRyU1RSKiA9IFBPSU5URVIgVE8gQVJSQVkgW3VudGFnZ2Vk
XSBPRiBTSE9SVENIQVI7XHBhcg0KaXMgd2hhdCB5b3UgbmVlZC5ccGFyDQpccGFyDQpGb3VuZCB0
aGlzIGluIG1vZHVsZSBXaW5BcGkuXHBhcg0KSSBzZWVtIHRvIHJlbWVtYmVyIFBDaGFyIHdhcyBh
ZGRlZCB0byBCb3JsYW5kIHBhc2NhbCBpbiBvcmRlciB0byBtYWtlIGludGVyZmFjaW5nIHRvIFdp
bmRvd3MgZWFzaWVyLlxwYXINClxwYXINCkJyZ2RzLFxwYXINCktvZW4uXHBhcg0KXHBhcg0KT24g
U2F0LCAyNyBNYXkgMjAwNiAwMDoyMTowNiArMDIwMCwgeW91IHdyb3RlOlxwYXINClxwYXINCj5I
ZWxsbyBCbGFja2JveGVycyxccGFyDQo+XHBhcg0KPkkgd2FudCB0byBibGluayBhIGxlZCB1c2lu
ZyB1c2luZyBLYWlua2EncyAiUEMgSW50ZXJmYWNlcyB1bmRlciBXaW5kb3dzIi5ccGFyDQo+VGhl
IGJvb2sgY29tZXMgd2l0aCBhIGRsbCAtIFBPUlQuRExMIC0gd2hpY2ggZW5hYmxlcyBjb21tdW5p
Y2F0aW9uIHdpdGggXHBhcg0KPnRoZSBzZXJpYWwgcG9ydHMgdW5kZXIgWFAuXHBhcg0KPldpdGgg
RGVscGhpIHRoZSBsZWQgYmxpbmtzLiBJbiBCbGFja0JveCwgSSBjYW4ndCBnZXQgaXQgbGlnaHQu
IEkgc3VzcGVjdCBccGFyDQo+dGhhdCBteSB3YXkgb2YgdHJhbnNsYXRpbmcgdGhlIGRlbHBoaSBQ
Q0hBUi10eXBlXHBhcg0KPmludG8gYW4gYXJyYXkgaXMgbm90IGNvcnJlY3QuIENhbiBJIHVzZSBh
biBhcnJheSBhcyBhbiBudWxsIHRlcm1pbmF0ZWQgXHBhcg0KPnN0cmluZz8gQW55b25lIHNvbWUg
YWR2aWNlP1xwYXINCj5ccGFyDQo+SW4gZGVscGhpLCBvcGVuaW5nIHRoZSBjb20tcG9ydCBpcyBk
b25lIGFzIGZvbGxvd3MuXHBhcg0KPlxwYXINCj5GdW5jdGlvbiBPUEVOQ09NKFM6UENIQVIpOklu
dGVnZXI7c3RkY2FsbDsgZXh0ZXJuYWwgUE9SVC5ETEw7XHBhcg0KPlxwYXINCj5mb3IgZXhhbXBs
ZTogT3BlbkNvbSAoUGNoYXIoJ0NPTTE6OTYwMCxOLDgsMScpKTtccGFyDQo+T3BlbUNvbSAgcmV0
dXJucyBhIDEgd2hlbiBjb25uZWN0ZWQsIDAgd2hlbiBmYWlsZWQuXHBhcg0KPlxwYXINCj5Gb2xs
b3dpbmcgbXkgdGhlIHRyYW5zbGF0aW9uIG9mIHRoZSBmdW5jdGlvbiAgdG8gY29tcG9uZW50IHBh
c2NhbFxwYXINCj5ccGFyDQo+SU5URVJGQUNFOlxwYXINCj5jb25zdHIqID0gIEFSUkFZIDE4IE9G
IENIQVI7XHBhcg0KPlBST0NFRFVSRSBvcGVuY29tKiBbIk9QRU5DT00iXVxwYXINCj4oQ29uc3Ry
OmNvbnN0cikgOiBJTlRFR0VSO1xwYXINCj5ccGFyDQo+VEVTVEZVTkNUSU9OOlxwYXINCj5vcGVu
IDo9IFBvcnRETEwub3BlbmNvbSgiQ09NMTo5NjAwLE4sOCwxIik7XHBhcg0KPlxwYXINCj5ccGFy
DQo+XHBhcg0KPlRoZSB0d28gbW9kdWxlcyBJJ3ZlIHVzZWQuXHBhcg0KPi0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tXHBhcg0KPklOVEVSRkFDRVxwYXINCj4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHBh
cg0KPk1PRFVMRSBQb3J0RExMIFsiUE9SVC5ETEwiXTtccGFyDQo+SU1QT1JUIFNZU1RFTTtccGFy
DQo+VFlQRVxwYXINCj5ccGFyDQo+Y29uc3RyKiA9ICBBUlJBWSAxOCBPRiBDSEFSO1xwYXINCj5c
cGFyDQo+UFJPQ0VEVVJFIG9wZW5jb20qIFsiT1BFTkNPTSJdXHBhcg0KPihDb25zdHI6Y29uc3Ry
KSA6IElOVEVHRVI7XHBhcg0KPlxwYXINCj5FTkQgUG9ydERMTC5ccGFyDQo+XHBhcg0KPi0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQo+VEVTVE1PRFVMRVxwYXINCj4tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHBhcg0KPk1PRFVMRSBUZXN0UG9ydDtccGFy
DQo+XHBhcg0KPiAgICBJTVBPUlQgUG9ydERMTCwgU3RkTG9nO1xwYXINCj4gICAgVkFSIG9wZW46
IElOVEVHRVI7XHBhcg0KPiAgIFxwYXINCj4gICAgUFJPQ0VEVVJFIERvKjtccGFyDQo+ICAgIEJF
R0lOXHBhcg0KPiAgICAgICAgb3BlbiA6PSAzO1xwYXINCj4gICAgICAgIG9wZW4gOj0gUG9ydERM
TC5vcGVuY29tKCJDT00xOjk2MDAsTiw4LDEiKTtccGFyDQo+ICAgICAgICBJRiBvcGVuID0gMSBU
SEVOXHBhcg0KPiAgICAgICAgICAgIFN0ZExvZy5TdHJpbmcoIk9wZW5pbmcgQ09NMSBzdWNjZXNz
ZnVsLiAiKTsgU3RkTG9nLkxuXHBhcg0KPiAgICAgICAgRU5EO1xwYXINCj4gICAgICAgIElGIG9w
ZW4gPSAwIFRIRU5ccGFyDQo+ICAgICAgICAgICAgU3RkTG9nLlN0cmluZygiT3BlbmluZyBDT00x
IGZhaWxlZC4iKTsgU3RkTG9nLkxuXHBhcg0KPiAgICAgICAgRU5EO1xwYXINCj4gICAgRU5EIERv
O1xwYXINCj5ccGFyDQo+RU5EIFRlc3RQb3J0LlxwYXINCj4tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLVxwYXINCj5ccGFyDQo+LS0tIEJsYWNrQm94XHBhcg0KPi0tLSBzZW5kIHN1
YmplY3QgSEVMUCBvciBVTlNVQlNDUklCRSB0byBibGFja2JveEBvYmVyb24uY2hccGFyDQpccGFy
DQotLS0gQmxhY2tCb3hccGFyDQotLS0gc2VuZCBzdWJqZWN0IEhFTFAgb3IgVU5TVUJTQ1JJQkUg
dG8gYmxhY2tib3hAb2Jlcm9ufX0ASSwFB5ElkRKBLOViIg=


----boundary-LibPST-iamunique-220256095_-_---
Received on Tue May 30 2006 - 01:18:07 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:27:57 UTC