SCAM Documentation
Tim TimeWaster <tim@cuba.xs4all.nl>
Bugs
There are still a few bugs ("bug" is such an ugly word, these are
not bugs, but things that still have to be implemented) in SCAM.
Bugs That Are Still Alive
- The serial device works with termios.h only. A fix is to make an interface
class that uses SIO,
but this will require some changes in the Makefile. You can then compile SCAM
with -DUSE_SIO.
- The ISO 7816-3 layer in RASCaL has to filter output from readers that is
not card output. Now it will only work with dumb readers such as the Dumb
Mouse.
- The T=1 protocol layer needs a bit of redesign and a complete
implementation. It is not possible to send chained blocks and S-blocks are
not implemented. The error detection and correction also needs to be
implemented. But what we have now is adequate to hobby with.
- We need a T=0 reader as well. Note that the T=0 protocol can not fully be
implemented on dumb readers: if there is a parity error for a byte, the IFD
has to lower a certain line within some etu to request for a retransmission
of the byte. Unless the serial device takes care of this, together with the
reader's circuit, this cannot be implemented in software, as it is too slow.
- There needs to be code to parse an ATR and get all the communication
parameters from it. There is code in
stest that does this,
but IMHO it has a few minor bugs.
Bugs Fixed in SCAM v3.0 beta 2
- It is impossible to use quoted talk mode.
- The readers do not give an error if no card is present.
- The software readers do not share certain code, such as the mechanisms to
select a physical reader.
- To add a reader you need to change the code in two or three places.
- There are some obsolete functions which I forgot to clean up.