Linux, DosBox i /dev/ttyS0
kwiecień 28, 2008 — morituriusJak wiadomo - programista nie pracoholik - grać musi. Co należy jednak zrobić gdy jego sprzęt nie daje mu do końca takiej możliwości?
Wbrew pozorom, nie chodzi wcale o granie w super-wypasionego MMORPG’a - chodzi o grę starą i niemalże zapomnianą: The Settlers 2. Jaki więc mam problem skoro bóg zesłał programistów, którzy napisali DosBOX’a nawet na Linuksa?
Problemem jest gra na dwóch graczy. Każdy kto grał w The Settlers 2 wie o co chodzi - trzeba podłączyć 2 myszki, z czego co najmniej jedna musi być na porcie szeregowym (COM). Niby nic, ale co jeśli nie ma takiego portu? ^^ Np. ja w moim laptopie go nie mam i tutaj zaczynają się schody.
Poszperałem trochę w internecie i znalazłem informację, że porty szeregowe w linuksie reprezentowane są przez pliki /dev/ttyS* ( * - numer portu 0-3 [odpowiednio COM1-4] ). Istotne też, aby pamiętać, że ‘S’ ma być duże
Znalazłem taki port u siebie w katalogu /dev jednak nie mam pojęcia co mogę z tym zrobić dalej skoro nie mam takiego portu fizycznie? ^^
Napisałem nawet program który czyta dane z portu myszy ( /dev/input/mouse* ) i wysyła je na /dev/ttyS0 ale niestety sam DosBOX nie chce czytać tego portu zwracając przy starcie komunikat o błędzie:
Serial1: Opening /dev/ttyS0 tcgetattr failed with error 5.
Nie mam zielonego pojęcia co oznacza kod 5 bo nie mogłem znaleźć tego w internecie, ale pewnie ma to związek z brakiem fizycznego portu rs232 w moim laptopie.
Nasuwa mi się na myśl tylko jedna rzecz - jakiś wirtualny port szeregowy. Pytanie tylko czy to podziała… Może ktoś ma jakiś pomysł co do tego? Jestem otwarty na pomysły ![]()