6502 JSON ParserDrukuj stronę
Data ostatniej aktualizacji: 2022-08-13
Biblioteka 6502 JSON Parser umożliwia parsowanie obiektów JSON. Napisana została w assemblerze 6502 dla Commodore 64, lub innej dowolnej maszyny 8-bitowej wyposażonej w procesor 6502/6510.
Gdzie biblioteka ta może być przydatna?
Jednym z przykładów, i zarówno motywacją do utworzenia samej biblioteki, jest "zgrabna" obsługa wysyłania żądań (requestów) i odbierania danych z API. Szczególnie w świecie REST API, format JSON jest jednym z najpopularniejszych, nie wiele "ważących" i czytelnych formatów do reprezentacji danych, i najprawdopodobniej nadal będzie przez następną dekadę. Z tego powodu, wierzę, że wspieranie Commodore 64 i innych 8-bitowych maszyn poprzez wszechstronny 6502 JSON Parser może przynieść nowe pomysły, i aktywnie wesprzeć rozwój nowego oprogramowania dla naszych wspaniałych, małych, ale na swój sposób potężnych maszyn.
W prosty sposób możesz użyć JSON Parser z biblioteką http64 napisaną przez Doc Bacardi która umożliwa wysyłanie żądań przez HTTP. Kod źródłowy znajdziesz tutaj: http://csdb.dk/release/?id=14611. Biblioteka http64 używana jest w programie HTTP-Load, i przeglądarce Singular Browser, i działa doskonale z cartridgem RR-Net, lub innym. WiC64 (interfejs WiFi dla C64, SX64, C128 oraz VIC20) jest innym alternatywnym rozwiązaniem, które wspiera protokół HTTP (pisząc to w sierpniu 2022 roku, tylko metoda GET jest wspierana).
Możesz użyć JSON parsera także by zorganizować swoje dane, lub zachować konfigurację na dysku lub cartridge'u - do czegokolwiek biblioteka ta może być Ci przydatna!
Możliwości.
- Parsowanie dowolnej długości obiektu, oraz dowolnej długości wartości ciągu znaków czy wartości liczbowej.
- Parsowanie w trybie statycznym lub strumieniowym: obiekt JSON może zostać pobrany i parsowany w pamięci, lub może być parsowany z otwartego strumienia co jest szczególnie przydatne dla ciężkich odpowiedzi z serwera.
- Tylko jedna linia kodu wystarczy, by w prosty sposób zapisać tablicę ciągu znaków, lub liczb w pamięci, bez żadnych ograniczeń pamięciowych.
- Parsowanie escaped characters dla kluczy i wartości (np: cudzysłowia poprzedzone ukośnikiem wstecznym).
- Możliwość konwertowania znaków ASCII na PETSCII, dzięki czemu mogą być wyświetlone bezpośrednio na ekranie.
- Możliwość zapisu nie tylko wartości, ale także kluczy (a także długości tych wartości i kluczy).
- Strona zerowa nie jest używana przez bibliotekę (aczkolwiek konfiguracja umożliwia zdefiniowanie własnych pointerów), więc nie trzeba się martwić przydzieleniem i ewentualną kolizją zmiennych.
- Długość kluczy jest ograniczona ale konfigurowalna (do 256 bajtów).
- Parser umożliwia zachowywanie tylko istotnych danych.
Biblioteka 6502 JSON Parser zawiera testy jednostkowe napisane przy użyciu naszego frameworka do testów jednostkowych c64unit.