1,701

(43 odpowiedzi, napisanych Bałagan)

Miernota? Ja to bym powiedział, że służby raczej rekrutują się z najlepszych. Krawężnik z suszarką nie musi być mistrzem intelektu, ale tu to raczej na miernotę pozwolić sobie nie można...

1,702

(14 odpowiedzi, napisanych Zloty)

Nietuzinkowa opcja.

1,703

(4 odpowiedzi, napisanych Bałagan)

Piękna sprawa. Nowa generacja retrokomputerów :) Czyli mogę mieć komputer swoich marzeń? ;]

1,704

(9 odpowiedzi, napisanych Bałagan)

Ej, ej. Panowie. "Bezrobotny" w tym przypadku to nie jest "nierób".

1,705

(27 odpowiedzi, napisanych Bałagan)

Google cenzored!!? :D Yerzu czym sobie zasłużyłeś. To wszystko pewnie przez tę Japonię...

1,706

(27 odpowiedzi, napisanych Programowanie - 8 bit)

No jasne. Mapowanie zachodzi między ZNAKAMI a nie funkcjami znaków (choć nie do końca, bo EOL jest mapowany wg funkcji jaką sprawuje na NL). TAB w ATASCII ma kod $7F co jest mapowane na znak unicode $25B6 czyli "BLACK RIGHT-POINTING TRIANGLE" czyli "▶". Mapa jest dwukierunkowa więc z UTF8 na ATASCII szukany jest kod ASCII 9 (TAB) a takiego nigdzie nie ma - stąd konwersja zawodzi. Na szybko trzeba by pewnie zrobić tablicę mapującą funkcje i zostawiającą resztę znaków w spokoju. Albo zamienić 9 na sekwencję UTF8 dla kodu $25B6.

1,707

(25 odpowiedzi, napisanych Sprzęt - 8bit)

Atari, jak samochód. Za wyjazd z salonu płacisz 1/3 ceny :) A części już nikt nie produkuje więc się zarabia... <rotfl>

1,708

(27 odpowiedzi, napisanych Bałagan)

Hahahaha. "Kazał" fsck!
Dzięki Yerzu, bo już normalnie nie miałem czego słuchać. A tak? Robota teraz pójdzie jak z płatka :)
Czas zresztą już był najwyższy.

1,709

(27 odpowiedzi, napisanych Programowanie - 8 bit)

@greblus: Jasne. Dzięki.

@Spencer: To załatwi sprawę kiedy zostanie odpalone przed iconv:

$ awk '{ gsub(/{/,"$("); gsub(/}/,"$)"); print }' <text.input >text.output

Tylko pewnie musisz najpierw http://gnuwin32.sourceforge.net/packages/gawk.htm

Edit: Aaaa zapomniałem. W moich paczach na libiconv EOL z ATASCII (155/$9B) jest mapowany na unixowe LF (10/$0A).

Edit 2: Możesz oczywiście strumieniem:

$ awk .. <input.txt | iconv -t atari8 > output.txt

1,710

(101 odpowiedzi, napisanych Zloty)

155 to kod EOL w 8-bit Atari :)

1,711

(27 odpowiedzi, napisanych Programowanie - 8 bit)

greblus napisał/a:

Ten błąd z makrem w stdio.h:

#if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ > (2, 16)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#endif

Brakuje mu operatora binarnego, bo pewnie makro się zmieniło w międzyczasie :)

Tabulatory konwertuje chyba ok (screen).

Spróbujcie usunąć wrapper i wstawić tam tylko:

_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");

Kiedyś taka konstrukcja mi się kompilowała, ale po upgradach ubuntu przestało - w necie znalazłem tą poprawkę, wstawiłem i zaczęło się kompilować.

Edit: Poprawka oczywiście aplikowana jest na plik srclib/stdio.in.h

1,712

(27 odpowiedzi, napisanych Programowanie - 8 bit)

Procedura włączania własnego mapowania:

1. Ściągam i rozpakowuję wersję oryginalną:

$ wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
$ tar zxf libiconv-1.14.tar.gz
$ cd libiconv-1.14
$ export ICV=$(pwd)

2. W $ICV/tests/ opracowuję sobie pliki z mapowaniem np. ATARI8-GRAPH.TXT.

3. Kompiluję sobie narzędzie do przetwarzania mapowań:

$ cd $ICV/tools
$ make 8bit_tab_to_h

4. Mapowanie przetwarzam za pomocą

$ cd $ICV/lib
$ $ICV/tools/8bit_tab_to_h "Atari 8-bit Semi-graphic ATASCII" atari8_graph <$ICV/tests/ATARI8-GRAPH.TXT

Jeśli trzeba wprowadzić jakieś poprawki do wygenerowanego pliku, to należy to zrobić dopiero teraz. Można oczywiście (i gorąco to polecam) też modyfikować $ICV/tools/8bit_tab_to_h.c żeby uniknąć modyfikowania generowanego kodu.

5. Uzupełniam pliki:
- $ICV/lib/aliases_extra.h

  S(extra_12, "ATARI8", ei_atari8_graph )
  S(extra_13, "ATARI8-GRAPH", ei_atari8_graph )
  S(extra_14, "ATARI8-ATASCII", ei_atari8_graph )
  S(extra_15, "ATASCII", ei_atari8_graph )

- $ICV/lib/converters.h

#include "atari8_graph.h"

- $ICV/lib/encodings_extra.def

DEFENCODING(( "ATARI8",
              "ATARI8-GRAPH", "ATARI8-ATASCII", "ATASCII",
            ),
            atari8_graph,
            { atari8_graph_mbtowc, NULL },     { atari8_graph_wctomb, NULL })

- $ICV/lib/flags.h

#define ei_atari8_graph_oflags (HAVE_ACCENTS)

Tu wydaje mi się wystarczy 0 - HAVE_ACCENTS prawdopodobnie stosuje się dla kodowań ze znakami diakrytycznymi (nie wnikałem w kod - trzeba by się w to zagłębić).

5. Kompiluję całość:

$ cd $ICV
$ ./configure --enable-extra-encodings
$ make

6. Instaluję:

$ sudo make install
$ sudo ldconfig

Edit: Nie wiem zupełnie czy i jak definiować mapowania wielobajtowe. Pewnie się da, bo wystarczy spojrzeć na kodowanie arabskie gdzie znaki pisze się od prawej do lewej.

Edit 2: Załączam jeszcze moją wersję narzędzia 8bit_tab_to_h.c bo oryginalna się nie kompiluje (poprawiłem to ze 3 lata temu i nie pamiętam ocb).

1,713

(27 odpowiedzi, napisanych Programowanie - 8 bit)

Nowy patch na libiconv.

1,714

(22 odpowiedzi, napisanych Fabryka - 8bit)

Aktualizacja 4.
Poprawione:
- ATARI8-CAPEK, ATARI8-CZ - inne mapowanie znaku CLRSCR (125)
Dodane:
- ATARI8-TCHEKO - czeski film
- ZX80, ZX81 - w unicode brakuje dwóch znaków (w sumie 4 bo +inwers) $0D, $0E
- ZX82, ZXSPECTRUM, ZX82-PL, ZXSPECTRUM-PL - standard ZX Spectrum i polskie znaki w standardzie H-PRG
- PETSCII-UC, PETSCII-LC, PETSCII - C=
- CP895, CP867, KAMENICKY, KEYBCS2 - czeskie kodowanie braci Kamienickich
Arabskie ATASCII ciągle czeka na chętnego.

1,715

(243 odpowiedzi, napisanych Fabryka - 8bit)

Ja też byłbym taką wersją zainteresowany.

1,716

(243 odpowiedzi, napisanych Fabryka - 8bit)

Gratulacje! W pełni zasłużone pierwsze miejsce.

1,717

(27 odpowiedzi, napisanych Programowanie - 8 bit)

Dziękuję.

1,718

(318 odpowiedzi, napisanych Fabryka - 8bit)

Podobno (_podobno_!) obydwa CPU (6502C i 65C816) mogą pracować równocześnie korzystając z tej samej pamięci. Jeśli to prawda to byłbym mocno zainteresowany informacjami na ten temat.

Edit: W zasadzie to nawet jeśli nie korzystają z tej samej pamięci to nadal byłbym zainteresowany tym jak to działa.

1,719

(27 odpowiedzi, napisanych Programowanie - 8 bit)

W razie gdyby ktoś chciał się zabawić w kompilację służę plikami mapowań. Procedura jest taka, że plik .TXT z mapowaniem przetwarza się na .c za pomocą tools/8bit_tab_to_h dostępnego w źródłach libiconv, włącza się to w źródło (kopiuje pliki .c + modyfikuje Makefile i parę innych - odsyłam do przejrzenia patcha) i kompiluje potem razem. Zdecydowałem się na włączenie tych mapowań jako dodatkowych - dostępnych z --enable-extra-encodings podczas configure. Pliki załączam w celach poglądowych, bo do kompilacji wystarczy źródło i plik patch z mojej strony. Nagłówki i copyrighty unicode.org w załączonych plikach mogą być tam niepopoprawiane więc nie zwracajcie na to uwagi - wszystkie sam przygotowałem. W przygotowaniu są jeszcze kodowania arabskie, czeskie (tcheko i cp895 czyli standard kamenickych), Z80/Z81, ZX Spectrum (standard i PL) oraz PETSCII (lowercase i uppercase - jeśli ktoś ma informacje o standardach kodowania pliter na C= to poproszę o info).

1,720

(27 odpowiedzi, napisanych Programowanie - 8 bit)

Nie ma za co. I to mi się podoba! Bieżcie i jedźcie ;)

1,721

(318 odpowiedzi, napisanych Fabryka - 8bit)

aMAME :)

1,722

(318 odpowiedzi, napisanych Fabryka - 8bit)

@lemiel: Dzięki. Amiga to z VBXE i SoundBoardem :) Z Evie to ST :)

1,723

(318 odpowiedzi, napisanych Fabryka - 8bit)

Ile RAM może mieć Rapidus maksymalnie? Czy będzie możliwość rozszerzenia RAMu na max? Czy trzeba to będzie robić w specjalizowanych salonach firmowych czy da się w garażu bez lutownicy? :)

Edit: Atariki mówi o 31MB łącznie - czy jest to prawda?

1,724

(5 odpowiedzi, napisanych Programowanie - 8 bit)

A może by tak zrobić optymalizator kodu BASICa? :)

Edit: literówka

1,725

(27 odpowiedzi, napisanych Programowanie - 8 bit)

Na mojej stronie znajduje się patch na program GNU libiconv. A tu http://www.atari.org.pl/forum/viewtopic.php?id=9281 jest wątek na aa. Używam go w makefileach do automatycznej konwersji plików tekstowych podczas budowania projektu.
Ma niestety swoje ograniczenia w zakresie inverse i znaków kontrolnych - nie wszystkie kombinacje są konwertowane poprawnie, ponieważ nie znalazłem w unicode odpowiedników. Z podstawowym zestawem ASCII nie ma problemów.
iconv -l poda ci listę wszystkich enkodingów; patrz na te z prefiksem ATARI8.