Demo1-tavaraa
DEMO.zip pitää sisällään:
- USBServer.c ja questions1.xml-tiedostot tietokoneeseen
- Download-projekti palmiin
- Answer-projekti palmiin
- Upload-projekti palmiin
Ideana on kääntää USBServer.c tietokoneella, kytkeä palm USB-piuhalla
tietokoneeseen, käynnistää USBServer ja käynnistää Download-ohjelma
palmissa. Kun klikkaa palmissa nappulaa, USBServer lähettää
tietokoneelta questions1.xml-tiedoston palmiin, jonne se tallennetaan.
(questions1.xml-tiedoston pitää olla samassa hakemistossa kuin USBServer).
Tämän jälkeen voi halutessaan irrottaa USB-piuhan ja vaikka sammuttaa
palmin, koska questions1.xml-tiedosto on tallennettuna palmin
tiedostojärjestelmään. Kun sitten käynnistää jossakin vaiheessa palmista ohjelman
Answer, se lukee xml-tiedoston tiedostojärjestelmästä ja luo sen
perusteella käyttöliittymän. Kun klikkailee nappuloita ja valintalaatikoita,
ohjelman pitäisi tallentaa ID:t answers.dat-nimiseen tiedostoon.
Vastaamisen jälkeen palmin voi taas sammuttaa jos haluaa. Lopuksi käynnistetään USBServer tietokoneella, kytketään palmi USB-piuhalla
tietokoneeseen ja käynnistetään palmissa ohjelma Upload. Kun klikkaa
nappulaa tässä ohjelmassa, sen pitäisi lähettää answers.dat tiedoston
sisältö tietokoneelle, jossa näkee valittujen vastausten ID:t. Ääkköset toimivat myös.
Ongelmia ja puutteita
-
Ohjelmat käyttävät kiinteänkokoisia tiedonsiirtopuskureita (32000 tavua). Hyvä puoli tässä
on yksinkertaisuus. Tiedonsiirto näyttäisi myös toimivan näin erittäin luotettavasti ja nopeasti.
Jostakin syystä 32000 tavua vaikuttaisi siirtyvän paljon nopeammin kuin jossakin aiemmassa selostuksessani käytetyt
pienemmät (muistaakseni vaihtelevankokoiset) puskurit (!). En ole tosin mitannut aikoja, tai tutkinut mistä tämä johtuu, mutta isomman puskurin
lähettäminen ei ainakaan ole liian hidasta.
Jos suurin palmissa mahdollinen tiedostonkoko on 64 kiloa, niin tällä tavoin olisi ehkä
mahdollista lähettää isoimmatkin mahdolliset tiedostot yhdellä kertaa kasvattamalla
puskereiden kokoa 32000:sta tavusta ylöspäin. Mutta koska vaihtelevankokoiset puskuritkin toimivat nyt, ne voisi
tietenkin ottaa myös käyttöön.
-
Kun käynnistää Answer-ohjelman, palm herjaa yhdellä File-virheilmoituksella. Tästä pääsee eteenpäin klikkaamalla
OK.
-
Kun vastaa kysymyksiin (siis klikkailee nappuloita, valintalaatikoita, yms.) niin vastausten tallentaminen
ei onnistu jostakin syystä, vaan palm herjaa virheilmoituksilla. Näistä pääsee eteenpäin klikkaamalla kaksi kertaa OK.
-
Upload ei saa ilmeisesti avattua answers.dat-tiedostoa, joten vastausten lähettäminen ei onnistu. Joko avaaminen
ei onnistu siksi, että Answer-ohjelma ei ole onnistunut tallentamaan answers.dat-tiedostoa, tai jostakin muusta syystä.
-
Answer-ohjelma on aivan siinä hilkulla kasvaa liian isoksi. Jopa muutaman koodirivin lisääminen saattaa tehdä siitä liian ison :-)
Onnistuin saamaan muutamien rivien poistamisella sen tarpeeksi pieneksi, ettei tarvinnut ruveta segmentoimaan koodia.
Mutta luultavasti sen joutuu segmentoimaan jossakin vaiheessa.
-
Listan ja sliderin käyttöä ei vielä tallenneta (tai yritetä tallentaa, koska answers.dat-tiedoston kirjoittaminen ei onnistu).
Nappuloiden ja valintalaatikoiden klikkaaminen yritetään kyllä tallentaa.
-
XY-koordinaatisto-gadget ei ole vielä mukana.
-
Ohjelmassa aukeaa vain yksi formi. Tähän pitäisi lisätä useampien kysymys-näkymien luonti.
-
Download, Answer ja Upload ovat kolme erillistä ohjelmaa. Garnet OS:n dokumentaation
perusteella pitäisi kuitenkin olla mahdollista käynnistää ohjelmasta muita ohjelmia. Eli pitäisi olla mahdollista
tehdä vielä viides ohjelma (neljäs palm-ohjelma), joka käynnistäisi Download, Answer tai Upload-
ohjelman sen mukaan, mitä nappulaa käyttäjä klikkaa ja palaa sitten takaisin.
XML-datan siirtäminen tietokoneelta palmiin, tallentaminen palmiin, parsiminen ja käyttöliittymän luonti siis toimivat, mutta
vastausten tallentaminen ei jostakin syystä.