* README.md
- Add new readme indicating that this host program is only intended for the
stream-based demo, and explaining how to use it
* host.adb
- Add much more comments in the header block explaining how to use this program and
why it is needed
- Parameterize the host port number instead of hard-coding it
* demo_serial_port_blocking.adb
- Use normalized (new) procedure names for Send and Receive, for consistency with
other versions
- Add comments re: baud rate and other settings required
* demo_serial_port_nonblocking.adb
- Better name for local procedure
- Add many more comments re: settings
* demo_serial_port_streaming.adb
- Replace source code in comment header block with location of the actual
code and project file.
- Add comment re: serial port settings
* peripherals_blocking.ads
- Peripheral should be a constant
- COM can now reference the designated USART, the component of Peripheral
* peripherals_nonblocking.ads
- Same as for peripherals_blocking.ads
* peripherals_streaming.ads
- Same as for peripherals_blocking.ads
* serial_io-blocking.ads
- Type Serial_Port now designates a USART rather than type Peripheral
- No longer provide call through routines for the Serial_IO package's
Initialize_Hardware and Configure since client can easily call them. Better
separation of concerns as a result.
- Change signatures of internal routines to be access-to-USART
* serial_io-blocking.adb
- Internal simplifications reflecting change to access discriminant now designating type USART
- Remove code for Initialize_Hardware and Configure, per removal from package spec
* serial_io-nonblocking.ads
- Type Serial_Port now designates a USART rather than type Peripheral
- No longer provide call through routines for Serial_IO packages
Initialize_Hardware and Configure since client can easily do so, and simplifies this package
- Change signatures of internal routines to be access-to-USART
* serial_io-nonblocking.adb
- Internal simplifications reflecting change to access discriminant now designating type USART
- Remove code for Initialize_Hardware and Configure, per removal from package spec
- Use short-circuit control forms in ISR since don't need to check both conditions, should be
a little faster
* serial_io-streaming.ads
- Type Serial_Port now designates a USART rather than type Peripheral
- No longer provide call through routines for Serial_IO packages
Initialize_Hardware and Configure since client can easily do so, and simplifies this package
- Change signatures of internal routines to be access-to-USART
* serial_io-streaming.adb
- Internal simplifications reflecting change to access discriminant now designating type USART
- Remove code for Initialize_Hardware and Configure, per removal from package spec
* serial_io.ads
- Procedure Initialize_Hardware's formal parameter is no longer an access parameter
- Procedure Configure's first formal parameter is now access to USART
* serial_io.adb
- Change to prcoedures' signatures as per spec
- Procedure Configure now uses distinguished receiver syntax for USART routines, much cleaner
demo-*:
use Unchecked_Access in these specific demos
serial_io-blocking.ads:
correct postcondition on procedure Receive so that empty content is handled properly
serial_io-nonblocking.ads:
add postconditions to procedure Receive
* Significantly simplify Serial_IO.Nonblocking and revise associated files
serial_io:
Use better name for hardware init routines
serial_io.nonblocking:
Implement primary type Serial_Port directly as a protected type.
Add discriminant for IRQ priority.
Simplify transmission routine (remove a protected variable).
Remove pre/post for initialization since not worth extra complexity for type impl.
Use better names as replacements for Put/get.
serial_io.blocking:
Update names for procedures Put and Get to be same as those of package Nonblocking.
Update name for hardware init routine to be consistent with other packages.
Remove pre/post for initialization since not worth extra complexity for type impl.
serial_io.streaming:
Update names for procedures Put and Get to be same as in Blocking and Nonblocking.
Update name for hardware init routine to be consistent with other packages.
Remove pre/post for initialization since not worth extra complexity for type impl.
peripherals_nonblocking:
Specify new IRQ priority discriminant.
Remove unnecessary constant.
Improve comments.
peripherals_blocking:
Improve comments.
peripherals_streaming:
Improve comments.
demo mains:
Revise for name changes.
Improve comments.
* remove trailing blanks
This build dependency won't work anymore with the next GNAT release as
runtimes will now require being installed into the compiler.
This commit also now generates automatically the board projects, to ease
the addition of new boards and runtimes, as well as taking into account
modifications refactoring of the library.