Juz opowiadam z czego to wynika :)
Urządzenie "Networking Device" zdefiniowalem wcześniej.
Wszystkie komendy tego urządzenia definują spójne API do komunikacji po socketach.
Emulację tego urządzenia można włączać i wyłączać (w appce SIO2BT).
Potem posłuchałem podcastu - wywiadu z Tomem Hudsonem:
http://ataripodcast.libsyn.com/antic-in ... son-analog
i przyszedł mi pomysł do głowy, żeby jego koncepcję z urządzeniem B: przenieść z emulatora na prawdziwy sprzęt.
Oczywiście mogłem dodać nową komendę do "Networking Device", ale zrobiłby się z tego niespójny zlepek.
Ta nowa komenda to polecenie otwarcia przeglądarki internetowej i wyświetlenia w niej danego URL.
Na tym koniec. Nie ma dalszej komunikacji ATARI z przeglądarką.
Użytkownik natomiast może w przeglądarce się zalogować itd. Czyli tak jak DATA MATRIX, tylko nie potrzebna jest kamera i wszystko dzieje się automatycznie.
Pomyślałem więc, że dla takiej specyficznej funkcjonalności zdefiniuję nowe urządzenie, które w przyszłości będzie można rozszerzać o różne dziwne komendy, które wykonać może tylko jakieś zewnętrze urządzenie typu smartfon, czy PC.
XXL miał na przykład pomysł odpytania smartfona o geo pozycję (dł.i szer. geograficzną), żeby wraz z Hi-Score załadować na serwer lokalizację gracza. Chodzi o tego typu funkcjonalność, które nowe urządzenie miało by oferować.
Tutaj przyszła refleksja, że może szkoda trochę tych device IDs.
I pomysłałem o APE TIME, które stało się de facto standardem dla synchronizacji czasu:
SIO DDEVIC: $45
SIO DUNIT: $01
COMMAND ID: $93;
i postanowiłem zrobić re-use - device nazwałem "Smart Device".
Wspiera akualnie dwie komendy:
COMMAND ID: $93 Get Time
COMMAND ID: $55 URL Submission
Urządzenie jest dostępne w appce SIO2BT i w RespeQt (od R4 RC1 https://github.com/TheMontezuma/RespeQt/releases ).