How does that work?

This section is to log aspects of the cybiko that need further investigation.

An undocument directive exists for the C compiled that indicates that the following code block should be compiled to native code.

 __native void hello() {
    <code goes here>
 }

The problem is all attempt to compile and link a source file that contains such a directive fail on the link stage.

It would seem that if you compile using the vcp1 (C++) compile rather than the vcc (C) compiler the output from C++ using the -V18 switch will actually link.

native.zip

It does run but this another matter to investigate.

Control flow API, how do these actually work?

 bool com_get_DTR (  com_t port )  
 bool com_get_RTS (  com_t port )  
 bool com_set_DTR (  com_t port, bool state ) 
 bool com_set_RTS (  com_t port, bool state )  

Does this API actually toggle a pin on the serial port high/low?
This program serialflags.zip will invoke these API calls, we just need to monitor the serial port with a break-out box to determine what happens.

These keys invoke the com_set… API function calls.

 <Q> set DTR
 <W> clear DTR
 <E> set RTS
 <R> clear RTS

Any character that appears on the cybiko serial port will be echo'd straight to the console.

It would seem that the RTS/DTR pin are not exposed on the 4pin serial connection that is used by the Cybiko Classic.

After examining the Cybiko Classic schematic, it is obvious that there is no DTR/RTS control. Which does beg the question - what were these API called designed to do?