Огляд
Один із моїх улюблених костилів епохи IBM PC – EMS. Причому, її емуляція на 286+ – не так цікаво, хочеться для справжнього 8086/88-комп’ютера – IBM-XT-подібного. Плат із такою пам’яттю було помітно більше, ніж “Дивних плат оновлення”, тому придбати їх на ebay реально, хоча й вимагало певної терплячості, поки з’являється лоти із прийнятними цінами.
Моя AST Rampage. На фото – 256 Кб RAM. На жаль, роз’єм для Daughter board не розпаяний. |
Нарешті, рік тому з’явилася в мене AST Rampage (8 bit, ISA). Одна із базових плат величезного сімейства AST Rampage. Додає XT-машині 256Kb-2048Kb EMS пам’яті. Кількість визначається тим, скільки мікросхем пам’яті встановлено1. Підтримує LIM EMS 4.0 – корисний для багатозадачності, вміє заповнювати стандартну пам’ять до 640Кб (з фіксованим кроком, залежним від моделі). Для контексту – див. огляд таких плат від InfoWorld, 1988, AST Research в той час, в значній мірі, “грала першу скрипку”.
Конфігурується джамперами2. |
Опис із документації на мою версію плати.
SWITCH SETTINGS STARTING ADDRESS SW1-1 SW1-2 SW1-3 SW1-4 ----- ----- ----- ----- 0K OFF OFF OFF OFF 64K ON OFF OFF OFF 128K OFF ON OFF OFF 192K ON ON OFF OFF 256K OFF OFF ON OFF 320K ON OFF ON OFF 384K OFF ON ON OFF 448K ON ON ON OFF 512K OFF OFF OFF ON 576K ON OFF OFF ON 640K OFF ON OFF ON TYPE OF RAM INSTALLED BANK 0 BANK 1 SW1-5 SW1-6 SW1-7 ------ ------ ----- ----- ----- 64K 64K | ON ON OFF 64K 256K | ON OFF OFF 256K 256K | OFF OFF OFF NOTE: The Rampage requires 256K DRAM memory chips in all of it'sbanks with the exception of banks zero and one. As shown above, 64K DRAMS may be used in these two banks if the switches are set correctly. SW1-8 - PARITY CHECK (recommended ON at all times) BASE I/O ADDRESS 208 218 258 268 2A8 2B8 2E8 --- --- --- --- --- --- --- SW2-1 ON OFF OFF ON ON OFF ON SW2-2 ON ON ON OFF OFF OFF OFF SW2-3 ON ON OFF OFF ON ON OFF SW2-4 ON ON ON ON OFF OFF OFF RAMPAGE MEMORY AVAILABLE AS COVENTIONAL (Base 640K) 0K 64K 128K 192K 256K 320K 384K 448K 512K 576K ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- SW2-5 OFF ON OFF ON OFF ON OFF ON OFF ON SW2-6 OFF ON ON OFF OFF ON ON OFF OFF ON SW2-7 OFF ON ON ON ON OFF OFF OFF OFF ON SW2-8 OFF ON ON ON ON ON ON ON ON OFF
Ревізія і серійний номер на коробці. |
На Amstrad 1640
Власне, машина, для якої ця плата призначена – 640Кб, 8-бітна ISA, 8086 процесор.
EMS, Windows тощо
Встановилася без проблем. Щоб отримати доступ до EMS, потрібен драйвер – REMM.SYS. (Refilled пам’ять в межах 640Кб доступна без додаткових дій).
Rampage + Amstrad 1640. Працює. Ремарка: фото, на жаль, традиційної сумнівної якості, але монітор не брудний – правіше-нижче центру це подряпини, трохи є їх і в інших місцях. |
Звіт CheckIt. Ремарка: основної пам’яті – 639Кб через XT-IDE3. Після години за тим пузатим і мерехтливим монітором, мій великий здався мені вгнутим. :-) |
Windows 3.0 ця пам’ять теж сподобалася – почав працювати помітно швидше, хоча й не вирішально – Windows на такій машині заледве юзабельний чи так, чи так, але спробувати його було цікаво. Ретельно не підраховував, але було відчуття, що зависає із EMS трішки частіше.
Windows з EMS. |
Word 1.0 ця пам’ять теж сподобалася. |
А ось Excel дивно себе поводить – і кореляції із тим, що діється в системі не спостерігалося. . |
Спроба використати додаткові утиліти
Згідно документації, драйвер REX.SYS дає можливість використовувати пам’ять як RAM-диск, як RAM-дискету (розділено віртуалізацію як HDD i як FDD), або як спулер, за допомогою відповідних драйверів – SUPERDRV.COM, FASTDISK.SYS, SUPERSPL.COM відповідно. Утиліта INSTALL.COM дозволяє їх сконфігурувати – щоб не потрібно було вручну підбирати опції. Інструкцію для своєї плати не знайшов, допомогла інструкція до новішої, “AST Rampage 286 - Users Manual - December 1986”, хоча, аргументи командного рядка “субдрайверів” віртуальних дисків та спулера вона теж не описує.
На практиці, змусити працювати мені не вдалося. Після завантаження FASTDISK.SYS чи SUPERDRV.COM, наступний запуск виконавчого файлу зависає. До спроби запуску виглядає, що все ОК – ОС продовжує працювати. Випробував для MS DOS 6.22 (1994), MS DOS 3.31 (1987), PC DOS 3.2 (1986), PC DOS 3.1 (1985), двох версії пакетів AST SuperPak – 5.02 (1985), 6.11 (1986) і різних об’ємів пам’яті. Те ж – навіть якщо казати утилітам використовувати звичайну пам’ять, не EMS. При чому, INSTALL.COM (є лише в 6.11) бачив тільки 192 Кб із 512 Кб.
Зависає після натискання Y. |
Чомусь лише 192 Кб . |
Додатково, REX.SYS називає себе “RAMpage Extended Memory Emulator”, але коди дизасемблював, виявилося, що він лише емулює сервіси int 15h для роботи із extended memory: “COPY EXTENDED MEMORY” та “GET EXTENDED MEMORY SIZE”, і, здається, тільки ці4. Тому утилітам, які вміють використовувати XMS (Extended Memory), така емуляція теж не подобалася.
Містить стрічку:
Len Galasso was here!AST AST AST AST <багато повторів>
.
Інструкції та драйвери брав із minuszerodegrees.net, але, для повноти, викладаю і в себе: “AST SuperPak software - Version 5.02.zip”, та “AST SuperPak software - Version 5.02.zip”, “AST Rampage.txt”, “AST Rampage AT.txt”, “AST RampagePlus 286.txt”, “AST Rampage 286 - Users Manual - December 1986.pdf”, “AST_RampagePlus_286.pdf”.
На Compaq Portable III
Випробував її також на машині із 286 – Compaq Portable III Model 1, із екстендером для ISA-плат. Працює чудово, але лише як EMS – ділити між Extended/Expanded memory вміють лише новіші, типу AST Rampage 286 та 286Plus – тепер шукаю собі й таку.
Планую студентам презентацію провести з цього комп’ютера – VGA карта, яку можна підключити до нашого проектора, через екстендер теж чудово працює, але з наявною пам’яттю (640Kb) Windows 3.x відмовляється працювати в захищеному режимі, і якщо це не заважає Word чи Excel, то PowerPoint хоче саме захищеного режиму. На жаль, як і інші пакети презентування для Windows. “Рідні” розширювачі RAM для цієї машини існують, але трапляються помітно рідше, ніж AST Rampage.
Фото поки не маю, можливо, додам в майбутньому.
Додаток – AST SixPackPlus
Якщо занурившись в минуле глибше, вартує згадки AST SixPackPlus, 1983. Траплялося на просторах Інету, що лише за 1983 її було продано на 13 мільйонів доларів. Вона призначена для IBM PC (5150) та IBM XT (5160), і надавала такі можливості:
- Доповнити RAM до 640Кб. Максимально може містити 384 Кб – визначається кількістю мікросхем. Додавати їх можна було по 64 Кб за раз – це мало сенс у той час: через велику ціну пам’яті, був сенс докупляти її потроху.
- Містила годинник реального часу та календар із батарейкою – не маючи свого годинника, ті системи змушували користувача кожен раз вводити дату та час.
- RS-232 порт (COM-port), LPT-порт (паралельний), опціональний game-порт для підключення джойстика.
- Все це – з використанням лише одного слоту ISA. А їх на тих машинках, майже без вбудованих пристроїв на материнській платі, завжди бракує.
Власне, через відсутність годинника у тих, доволі популярних, комп’ютер, DOS, за відсутності autoexec.bat, завжди питається дату та час. Інші рішення проблеми часу описані тут: “IBM 5150/5155/5160 - Examples of Types of RTC Solutions” – обов’язково подивіться фото. Найдивніші плати були: ROM interposer, платка із RTC, що вставлялася на місце BIOS; CPU interposer – плата на місці CPU, із слотом для нього; Floppy drive interposer – між дисководом та контролером; окрім очевидного – ISA плати, були плати, які одягалися на ISA слот, контактуючи “лапками” до контактів вставленої плати, але не займаючи слота. Та й сама AST SixPackPlus була популярною через те, що займаючи один слот – яких завжди бракувало, виконувала багато функцій, заміняючи хай не шість, але зо три плати.
AST SixPackPlus, взято тут. Існує багато варіантів, візуально різних. |
Якщо таки вдасться завести працездатну IBM PC 5150 – маю шанс, почну і таку шукати.
Посилання
- Microsoft KB Archive/66420 – велика стаття про види пам’яті та як її використовували 16-бітні Windows.
- Windows 3.1 and Memory Management – глава 5 з “Windows Resource Kit” для Windows 3.1.
- Відео: Windows 3.0, Real-Mode, Small-Frame EMS and Origami, в описі є трохи технічних подробиць.
- Про HT12 чіпсет для 286, зокрема HT12EMS.SYS дозволяв відображати пам’ять на UMB.
- Expanded memory managers and DOS:
- “Anyway, Windows 3.0 does support LIM4 or EEMS, it’s spiritual predecessor. Windows 3.0 supports 64KB and 256KB page frames for EMS.”
- “Using DOS 6.x and running MemMaker can help to make Windows 3.0 see proper EMS, also. For testing purposes, I mean.”
- “Windows 2.x has trouble with CuteMouse being loaded. MS Mouse v6.24 does not cause trouble, however. I guess the same goes for MS Mouse drivers in general.”
- “Windows 2.x is DOS 4 aware, which causes trouble with later DOSes that use the older DOS 3 kernal structure (that’s DOS 5, 6 etc). Hence, SETVER or DOSVER must be used to fake a DOS 3.x version (I use 3.30).”
- “An obsolete version of REMM.SYS ships with Windows 2.03 (I tried it originally, before I found an updated REMM.SYS online).”
Виноски
-
Моя прийшла з 256Кб, вдома валялися сумісні мікросхеми пам’яті, із моєї першої материнської плати 286-го (яку я може колись ще й поремонтую…), то то стало 512Кб. Потім може ще додаткові куплю. ↩
-
Існували також плати AST, конфігуровані програмно, наприклад, Rampage/2. ↩
-
XTIDE Universal BIOS може резервувати 1Кб зверху для своїх змінних – це потрібно для сумісності із Turbo Basic (“Full operating mode”), до якого я відчуваю певну слабкість, варту 1Кб. :-) ↩
-
Хоча, без ретельнішого пошуку, ймовірно – із застосуванням дебагера, сказати точно важко. ↩