Rozszerzalna architektura

Oryginalny design dla komputera IBM PC zakładał "wyrwę" w szynie danych, pozwalającą na umieszczanie kart rozszerzeń. Były to karty rozszerzające z prawdziwego zdarzenia: wpisywały się w przestrzeń adresową systemu i wykorzystywały przerwania celem dostępu do swoich zasobów. Każde usprawnienie systemu, poza fizyczną wymianą procesora na inny zgodny z 8088, wiązało się z umieszczeniem nowej karty rozszerzeń. Dotyczyło to również rozbudowy pamięci RAM. Jest w tym coś pięknego. Architektura była otwarta do takiego stopnia, że dedykowane gniazda kart rozszerzeń ISA nie miały przyporządkowanych numerów przerwań. Wszystko to należało skonfigurować samodzielnie.

Druga wersja oprogramowania BIOS pozwalała kartom rozszerzeń na ładowanie tzw. Option ROM podczas procesu inicjalizacji. Option ROM rozszerzał funkcje BIOS-u, oferując przejęcie kontroli przez dodatkowy sprzęt jeszcze przed załadowaniem systemu operacyjnego. Otworzyło to możliwości dla stworzenia sprzętu niewymagającego systemu MS-DOS, a działającego w ustroju PC. Z cechy tej korzysta np. "nowożytna" karta XT-IDE. Model PC 5150 nie pozwala na uruchamianie systemu z dysku IDE... ale pozwala na załadowanie ROM-u kart XT-IDE, który wzbogaca go o obsługę takich dysków.

Z biegiem czasu całkowicie oddaliliśmy się od koncepcji kart rozszerzeń. Nowy sprzęt jest dziś dodawany za pomocą urządzeń USB. Gniazda ISA, gwarantujące bezpośredni dostęp do sprzętu, wymarły wraz z gniazdami oraz całymi kontrolerami portów szeregowych i równoległych. Magistrala PCI, wprowadzająca bezbolesną identyfikację urządzeń i automatyczny przydział zasobów w postaci programowalnego kontrolera przerwań, jest całkiem sporą warstwą oddzielającą karty rozszerzeń od głównego "system bus", jaki zaprojektowano dla IBM PC.

Not IBM Compatible anymore

Komputery z czystym UEFI usunęły z ustroju PC komponent BIOS, czyniąc je de facto sprzętem fundamentalnie niezgodnym z oryginalnym IBM 5150 (nie zadziała na nim PC DOS, a gdyby istniał tryb zgodności, i tak nie działałaby klawiatura). UEFI ma jednak swoje własne, przerażające rozwiązanie problemu: Bytecode Option ROM, niezależny od procesora i wykonywany przez UEFI.

Karty PCI mogą więc dalej rozszerzać funkcje podstawowego systemu (przed dostępnością dyskowego systemu operacyjnego), acz na w pełni zautomatyzowanej kontroli zasobów i bez możliwości wyłączonych lub niedostępnych w danym UEFI. Kontroler Thunderbolt twórczo rozszerza to podejście, również oferując obsługę Option ROM, ładowanego i wykonywanego podczas odpowiednika POST dla nowych komputerów.

Wszystko to jest nieporównanie bardziej skomplikowane i oddalone od sprzętu. Mądre urządzenia zgodne z UEFI mogą więc jednocześnie więcej i mniej. Mają więcej możliwości, ale wyłącznie na warunkach oferowanych przez UEFI, które swoim rozbudowaniem dostarcza nieprzyjemnych niejasności dotyczących implementacji, pozwalając na niebezpieczną swobodę.

Przede wszystkim jednak, powyższa zmiana pokazuje kierunek ewolucji formatów i rodzajów sprzętu. Nie chodzi tylko o to, że mamy już obowiązkową kontrolę zasobów i skomplikowane ROM-y będące tak naprawdę wtyczkami do UEFI. Ważniejszą przemianą jest usunięcie koncepcji kart rozszerzeń z urządzeń konsumenckich. Wysoka integracja urządzeń przenośnych oraz budżetowych rozwiązań "wszystko w jednym" doprowadziły do zniknięcia programowalnych kart rozszerzeń, a wysoka prędkość komunikacji zabiła porty równoległe i szeregowe.

Dziś każde urządzenie musi mieć duszę (firmware) i w rozbudowany sposób przedstawiać się w systemie. Przede wszystkim jednak - wszystko musi dziś być na kabelku. Nawet uporządkowanie owych kabelków następuje w groteskowy sposób, ponieważ podpięcie wszystkich gadżetów Thunderbolt i USB-C do stacji dokującej nie podpina ich już do "sprzętowej magistrali". Staje dokujące bowiem... też są na kabelku!

Industrialne piękno bez zbędnych wyrzeczeń

Istniał jednak pewien przedział w czasie, gdy taki rozwój wydarzeń jeszcze nie był oczywisty ani nieunikniony. Nie wiązało się to z żadnym podejściem ideologicznym (w ogóle nie było tu żadnego planu), a praktycznym. Nikt nie wpadał na pomysł kart graficznych ani stacji dokujących na kabel, bo wszyscy przeczuwali, że to nie będzie działać. Niestety, branżowa moda i estetyka wymusiły zwrot w taką stronę.

Apogeum ery alternatywnego podejścia jest zaklęte w stacji dokującej ThinkPad Advanced Dock 2503, zgodnej z ThinkPadami rymującymi się ze sprzętem w stylu R60, T61 i R500. Stacja ta zawiera zwyczajowe kolekcje gniazd USB, PS/2, RJ-11, RJ-45, audio oraz (wtedy powszechnych) LPT i COM, ale również CD-ROM, drugi czytnik kart pamięci oraz... gniazdo dla kart rozszerzeń PCI Express. Jest także ciężka jak sam sk*****yn.

Jej urok polega na tym, że jest ona jednocześnie potężną możliwością do rozbudowania sprzętu, ale jednocześnie po wpięciu jej do laptopa, nie jest widoczna w systemie jako oddzielne urządzenie, będąc w praktyce czymś blisko związanym z koncepcją rozszerzania systemowej magistrali. Wiem, że tak właśnie działające, pasywne stacje dokujące jeszcze nie wymarły i Thunderbolt nie wyparł ich w całości. Należy jednak pamiętać, że stacje dokujące z PCI Express, a w konsekwencji laptopy wyprowadzające owe PCI jako interfejs do rozszerzania, są rzadkością.

W tym przypadku stacja 2503 wygląda w dodatku jak ostatni powiew "myśli IBM" w krainie ThinkPadów, zanim zarządzanie marką i sprzętem zostało całkowicie przejęte i zmasakrowane przez firmę Lenovo. Nie powstała już potem stacja dokująca o zbliżonej postaci, a zarazem w opinii wielu nic nie przebiło jakością wykonania modelu T61p, wydanego mniej więcej w tym samym czasie, co dok 2503. Tym bardziej więc kuszącym jest zająć się owym urządzeniem i rozszerzyć system w maksymalny sposób, wykorzystując do tego wszystkie dostępne gniazda i porty.

ThinkPad w doku 2503

Zacznijmy więc od obowiązkowego elementu, jakim jest sam laptop. Pierwszym potrzebnym krokiem była wymiana palmrestu na niepopękany przy touchpadzie. Oczywiście, używanie touchpada w komputerach ThinkPad jest aktem świętokradztwa, ale touchpad obecny w moim R61i (bo to nim się zajmujemy) jest wręcz groteskowo skromny. Wszyscy przyzwyczajeni do dzisiejszych touchpadów prędko odkryją, że ten jest mniej więcej trzykrotnie za mały, nie obsługuje gestów ani multi-touch i dziwnie skacze podczas użycia. Alternatywą był zakup palmrestu w ogóle bez touchpada, ale niestety taki wariant nie zawierałby również czytnika linii papilarnych, a to już spory brak.

Pod palmrestem znajdują się dwa gniazda na pamięć RAM w standardzie DDR2. Dokumentacja laptopa informuje, że maksymalną obsługiwaną ilością pamięci są 4 gigabajty. Ta sama wartość była górną granicą widzianą przez fabryczne systemu Windows XP i 32-bitowa Vista. Jednakże, dokumentacja chipsetu mówi już o 8GB jako limicie. Istotnie, taka jest prawdziwa maksymalna ilość pamięci dla tego modelu. Szkoda tylko, że kostka 4GB DDR2 SODIMM kosztuje około miliarda cebulionów za sztukę. Zanim zdecyduję się na wyrzucenie kolejnych pieniędzy przez okno, chwilowo laptop będzie żył z sześcioma gigabajtami. Na palmrest należało jeszcze nakleić logo Intel Centrino Duo oraz Windows Vista, jak w oryginale. A dla beki dorzucić "Designed for Windows Me". Obligatoryjne było również zamontowanie nowego, czystego sutka do TrackPointa.

UltraBay

Niniejszy egzemplarz ThinkPada był obiektem wielomiesięcznych, złożonych studiów i symulacji, mających na celu wytyczenie jedynego miejsca, na które upuszczenie laptopa wywoła absurdalną, nieodwracalną awarię. Takim miejscem okazuje się być róg przy prawym zawiasie. R61i zaliczył upadek, który zniszczył zatokę UltraBay, w której zamontowany był napęd DVD. Na szczęście napędy te były absurdalnie awaryjne, więc bez wyrzutów sumienia należało je zastąpić kieszenią na drugi dysk. Niestety, awaria zatoki doprowadziła do lekkiego rozwarstwienia obudowy, przez co dysk wypadał, a między nim a sprzętem była solidna dziura. Problem pogłębiał się wskutek popękania dolnej obudowy sprzętu, wynikającej z wieloletniej pracy termicznej. Laptop przez kilka pierwszych lat moich studiów był używany do obliczeń rozproszonych BOINC, celem podwyższenia temperatury w mieszkaniu o upokarzająco niskim standardzie. Na taką serię bolączek trudno znaleźć rozwiązanie inne, niż szara taśma. Dobrze, że laptop będzie w doku.

PCMCIA

Dzięki obecności w stacji dokującej, poklejenie taśmą nie będzie widoczne. Nie będziemy też używać żadnych wbudowanych gniazd... poza jednym. Zatoką na karty rozszerzeń. Legenda głosi, że wiele nazw na różne rodzaje, złącza i "bitowości" laptopowych kart rozszerzeń nie są arbitralne i nie należy ich stosować wymiennie. Druga, komplementarna legenda mówi z kolei, że istnieje egzotyczny, dziki i niezbadany szczep ludzi poprawnie stosujących określenia PCMCIA/ExpressCard/CardBus/PC Card. Nie wierzę tym plotkom. Dla mnie każda karta rozszerzeń do laptopa to PCMCIA, tak samo jak dla boomerów każdy Pokemon to Pikachu (poza "tą śmieszną myszą żółtą"). Don't @ me.

W ten sposób ThinkPad został zaopatrzony w kartę-tuner telewizji DVB-T "Pinnacle PCTV 310c", kupioną okazyjnie na Allegro. Karta przyszła z uroczym, malutkim pilocikiem, ale niestety bez oprogramowania. Strona producenta posiada jednak gigantyczny pakiet ze sterownikiem oraz programem do telewizji DVB-T. Sterownik dla 64-bitowego systemu Windows Vista jest zgodny z najnowszą Dziesiątką, jeżeli bardzo się go o to poprosi. Gorzej z programem do oglądania stacji telewizyjnych. Windows Media Center wszak nie istnieje. Aplikacje Metro nie mają funkcji. Program od producenta wymaga (nieobecnego) klucza produktu, a znalezienie takowego na naddniestrzańskich forach o wyczynowym dekarstwie kończy się informacją... "Wprowadzony klucz produktu jest zablokowanym, wyciekłym kluczem. Odśwież swoją licencję"! Alternatyw jest niewiele. Pierwszą z nich jest ProgDVB-T, napisany w .NET i pełen błędów programistycznych oraz charakterystycznych dla Rosjan, elementarnych błędów ortograficznych. Program jest bogaty funkcjonalnie (gdy działa), ale każdy jego element, od instalatora, przez interfejs po biblioteki, jest odrażający. Alternatywą jest VLC, gdzie wszystko trzeba robić ręcznie. Ale patrzenie na niego sprawia mniejszy ból. Szkoda, że moja antena jest zrobiona z bawolich jelit i na opłotkach miasta, gdzie mam zaszczyt zamieszkiwać, nie łapie niczego poza goryczą i bolesnymi rozczarowaniami. Ale wymienię antenkę i będzie super.

Gniazda i czytniki kart

Laptopa można wreszcie wpiąć do stacji dokującej. Stacja ta nie korzysta z zasilacza laptopa, jak pozostałe. W przypadku 2503 zasilacz jest wbudowany w stację i zaopatrzony w wiatrak, a całość podpina się do prądu przez zwykłą koniczynkę. Wiatrak wbudowanego zasilacza jest dość głośny, ale to nic w porównaniu z wiatrakiem w osławionej zatoce PCI Express, który mimo mikrych rozmiarów jest absurdalnie hałaśliwy. Ale o nim dopiero za chwilę. Najpierw parę słów o pierwszym uruchomieniu laptopa w doku. Cieszy mała liczba "nowo wykrytych urządzeń". W przeciwieństwie do doków Thunderbolt 3, które wymagają sterowników i są tylko częściowo obsługiwane przez BIOS/UEFI samodzielnie, dok 2503 jest po prostu wielkim, ciężkim przedłużaczem. Gniazda obecne w doku są obecne w samym laptopie, są tylko niewyprowadzone. Dotyczy to koncentratorów USB, portów COM i LPT oraz samej magistrali PCI-Express. Karty sieciowe w laptopie (zarówno WiFi w gnieździe jak i Ethernet bezpośrednio na płycie) również są obecne w systemie przez PCIe. To bardzo rozsądna konfiguracja, nieprzepuszczająca wszystkiego przez USB. Jest to poprawnie zaprojektowany komputer osobisty.

Wyjątek stanowią dwa elementy: drugi czytnik kart oraz druga zatoka UltraBay. Czytnik jest ciekawy ze względu na to, że wzbogaca zbiór "rozumianych" kart pamięci o format CF. Karty CF to doskonałe zastępstwa dla dysków twardych IDE w starych komputerach, więc zadokowany ThinkPad może się stać stacją do łatwego przygotowywania instalacji systemów i kopiowania plików na retro-pecetach. To zawsze lepsze, niż podpinanie ubogich multi-czytników przez USB. Druga zatoka UltraBay pozwala wciąż posiadać napęd optyczny po zamontowaniu drugiego dysku twardego w laptopie. Oczywiście można zamontować również trzeci dysk (co jest kuszące). Możliwe jest także zainstalowanie w owym gnieździe baterii, ale to doprawdy durny pomysł, ponieważ niczego by nie zasilała. Skoro jednak mówimy o dyskach twardych, warto wspomnieć o tym, że dysk SSD w samym laptopie (bo przecież Windows musi być instalowany na SSD, bo inaczej zamęczy) musi być odpowiednio tani i beznadziejny. Decydując się na lepszy dysk, ryzykujemy poprawną obsługę oszczędzania energii w nim, co niestety nie działa najlepiej dla dysków półprzewodnikowych w tak starym sprzęcie. Lepsze dyski będą "zamarzać" od czasu do czasu, uniemożliwiając pracę. Tanie dyski GOODRAM typu 128GB sprawdzą się tu lepiej. Są tanie. Dwucyfrowo tanie.

Magistrala PCI Express

Po podpięciu kamery, mikrofonu, drukarki gamepada SNES-USB, ethernetu oraz (thinkpadowej) myszki, przyszła kolej na najważniejsze. Gniazdo na kartę rozszerzeń PCI Express! Konieczny jest tutaj pokaźny zbiór wyjaśnień i uzupełnień dotyczących natury działania tego unikatowego rozwiązania. Nie jest to bowiem takie zwykłe gniazdo. Przede wszystkim, jego wysokość to ścisłe 1U. Oznacza to nie tylko, że w zatoce nie pomieszczą się monstrualne, mocne karty graficzne wymagające wyłamania "dwóch śledzi", ale także te niby-pojedyncze, ale z rozbudowanym chłodzeniem. Karta musi naprawdę zajmować wysokość jednego kanału karty rozszerzeń i nie zachodzić chłodzeniem ani radiatorem na obszar następnej, bo w doku po prostu nie ma na to miejsca. Jest tam bez wątpienia bardzo ciasno, przez co liczba kompatybilnych kart graficznych (które mają sens) jest skromna. Na thinkpadowych forach znajdują się listy oraz zeznania świadków, opisujące zgodne karty, nieformalnym konsensusem jest wybór kart ATI/AMD, które w modelach zgodnych chronologicznie z erą doku 2053 były mniejsze od kart konkurencji. Dlatego w zatokę zamontowałem kartę Sapphire Radeon HD 5450. To jednak nie wszystko, co trzeba wiedzieć przy wyborze karty.

Bardzo istotną cechą gniazda PCI Express w 2503 jest to, że chociaż plastikowa szyna montażowa jest długa i mieści w kleszczu pełną kartę 16x, to do układu logicznego w doku i laptopie podpięte są tylko pierwsze piny. Oznacza to brak elektryczności i brak sygnałów na wszystkich pozostałych, czyniąc złącze gniazdem de facto 1x. Ma to poważne implikacje. Część kart graficznych, które mieszczą się w doku i tak może nie działać lub nie inicjalizować logiki odpowiedzialnej za akcelerację. Generalnie taki scenariusz nie jest wspierany w normalnych warunkach. PCI Express wymusza zgodność i negocjację prędkości, więc karty 16x mają być wykrywane w gnieździe 1x i działać wolniej "jeżeli to możliwe". W praktyce nie musi tak być, ponieważ żyjemy w piekle. Na szczęście HD 5450 wydaje się działać (mniej więcej) w gnieździe 1x, chociaż kontroler przerwań systemu Windows przydzielił mu, a przynajmniej tak twierdzi, IRQ 4294967286!

Jeszcze jedna, niekoniecznie dla każdego oczywista sprawa: wpięcie karty graficznej do gniazda PCI Express nie sprawia, że laptop zacznie jej używać do akcelerowania obrazu na wbudowanym monitorze. Panel TFT ThinkPada wciąż jest bowiem "podłączony" do karty graficznej Intel GMD (965/X3100) i nie istnieje metoda przepuszczenia karty drugiej karty na wbudowany monitor. Oznacza to, że aby skorzystać z karty graficznej z doku, konieczne jest zastosowanie drugiego, zewnętrznego monitora. Tutaj zaczynają się kolejne problemy tworzone przez dziwne gniazdo ze stacji 2503. Zazwyczaj bowiem wyjście cyfrowe, wymagające wyższej przepustowości, jest osiągalne tylko w środowisku 16x. Prowadzi to do sytuacji, w której gniazdo DVI i HDMI na karcie nie produkuje wyjścia, mimo że monitor i karta są wykrywane. Tworzy to pozory, że karta jednak nie działa albo sprawia dziwne, trudne do zdiagnozowania problemy. Na szczęście okazuje się, że wyjście analogowe działa bez problemu i podpięty do niego drugi monitor działa jako dodatkowe wyjście wideo. Wydarzenia wyświetlane na nim podlegają akceleracji w wykonaniu karty z doku, o czym świadczy skok obrotów chłodzenia zatoki podczas operacji wymagających akceleracji 3D. To dobra wiadomość. Gniazdo wytrzymuje elektrycznie, akceleracja działa, a pozbawiony wiatraków radiator w ciasnej zatoce jest jednak mniejszym problemem, ponieważ na jego obciążenie skutecznie reaguje układ chłodzenia stacji dokującej. Na owej konfiguracji dobrze dają sobie radę gry z epoki. Left 4 Dead na nieco zmniejszonych detalach działa wzorowo. Podobnie Portal 2. Czego chcieć więcej.

Monitor i dalsze kroki

Zastosowanym monitorem jest oczywiście Lenovo ThinkVision. Niestety, dopadnięcie "wystarczająco starego" monitora z owej serii, który byłby jednocześnie panoramiczny (8:5), kompletny (z "nogą"!), cyfrowy (Lenovo wciąż robi niektóre monitory tylko z wyjściem analogowym) i... sprawny (jeden z kupionych monitorów rozłączał się po kilku minutach pracy, początkowo myślałem, że dok się przegrzewa) jest naprawdę trudne. Dlatego byłem zmuszony użyć monitora 5:4, modelu L1711p, cyfrowego. Niestety bez kamery i bez soundbara, na które wciąż poluję. Dostępne są albo za nowe, albo za stare (i wtedy niezwykle kiepskie) albo uszkodzone. A tylko tego brakuje do w pełni "uthinkpadowionej", kompletnej instalacji zadokowanego R61i w konfiguracji wykorzystującej wszystkie gniazda i interfejsy w oficjalny sposób.