Кіріспе

Commodore RAM кеңейту блогы (REU) – сыртқы RAM модульдерінің жиынтығы. Commodore 128 үй компьютері таныстырылған кезде, осы модель үшін екі REU жарияланды: 1700 (128 КБ) және 1750 (512 КБ) REU. Кейін Commodore өздерінің Commodore 64 моделі үшін үшінші модельді ұсынды: 1764 (256 КБ).

REU қажеттілігі Commodore басшылығы жадының үлкен картасын талқылауға қарамастан, жадының көлемін шектейтін арнайы жадты басқару блогының (MMU) соңғы нұсқасын пайдаланбауға шешім қабылдаған кезде туындады. 1985 жылғы Тұтынушы Электроникасы Көрмесіне (CES) барған инженерлер енді қолдау көрсетілмейтін жад көлемін жарнамалайтын жарнама парақшаларымен және билбордтармен бетпе-бет келді, соңында жоғары басшылық қосымша жадты (512 КБ-ға дейін) қайда қосуға болатынын сұрады. 1985 жылы Чикагода өткен CES көрмесіне дейін инженерлер жаңа REU модульдерінің тікелей жадқа кіруін (DMA) көрсету үшін айналатын жер шарын демонстрациялай алды. REU аппараттық құралдарын Франк Палия, ал арнайы RAM кеңейту контроллерін (REC) интегралдық схемасын (IC) Виктор Андраде жобалады. Фред Боуэн мен Терри Райан C128 KERNAL және BASIC жүйелерін REU-ға бейімдеді, ал Хедли Дэвис 1980-жылдардың ортасындағы анимацияның әсерлі мысалы болған жер шарын айналдыру демо-нұсқасын жазды.

Жабдықтың сипаттамасы

C128 банктық ауысу арқылы 64 КБ-тан астам жедел жадқа қол жеткізе алса да, REU ішіндегі жадқа тек негізгі жад пен REU жады арасындағы жад алмасулары (STORE/LOAD/SWAP/COMPARE) арқылы қол жеткізуге болады. Сонымен қатар, C128-нің BASIC 7.0 құрамында REU-дан деректерді сақтау және алу үшін STASH, FETCH және SWAP деген үш команда бар. Ресми түрде C128-де тек 1700 және 1750 модельдері қолдау табады. 256 КБ модель, 1764, сол кезде C64 үшін шығарылды. Үш модельдің арасында шағын айырмашылықтар болды. Алғашқы C64 қуат көзі 1764-тің қосымша жүктемесін қамтамасыз ете алмады, сондықтан 2,5 амперлік C64 қуат көзі жиынтығына қосылды. 1700 модельі 16 4164 64kx1 DRAM микросхемасын, 1764 – сегіз 41256 256kx1 DRAM микросхемасын, ал 1750 – 16 41256 DRAM микросхемасын пайдаланады. Іс жүзінде, 1764 пен бұрынғы модельдер арасындағы айырмашылық үйлесімділікке елеулі әсер етпеді, және адамдар 1700 және 1750 модельдерін C64-пен, ал 1764 модельін C128-мен сәтті пайдаланды, бірақ C64-тің стандартты қуат көзі олардың кез келгенінің жүктемесін сенімді түрде басқаруға жеткіліксіз болды. Кейбір сатушылар 1764 пен қуат көзін бөлек сату үшін, не C64 пайдаланушыларына қуат көзін сату үшін, не 1764 модельін 512 КБ-қа дейін жаңарту үшін жиынтықтан шығарды. REU 1750 моделін банктық ауысу үшін 2 қосымша микросхема орнату арқылы 2 МБ-қа дейін жадты қолдау үшін өзгертуге болады. Бұл өзгертуде бағдарламалық үйлесімсіздіктің жалғыз себебі бар: $DF06 бітін әрқашан бірдей мәнге орнатпайтын, немесе әлі орнатылмаған 512 КБ банкке орнататын бағдарламалар жұмыс істемейді. 1980-жылдардың соңында DRAM тапшылығы болды, сондықтан 1750 модельдері сирек және қымбат болды. Дегенмен, 1700 немесе 1764 модельдерін 512 КБ-қа дейін жаңарту салыстырмалы түрде оңай болды. Бірнеше фирма мұны коммерциялық түрде жасады, жаңартылған модельдерді сату арқылы немесе клиенттер ұсынған модельдерді жаңарту арқылы. 1990-жылдардың басында әртүрлі онлайн қызметтерде REU сыйымдылығын бір мегабайтқа немесе одан да жоғары деңгейге көтеруге арналған өздігінен жасалатын (DIY) өзгерту схемалары пайда болды.

Үлгі айырмашылықтары

1700-ші жылдардағы схемалық тақта 1750-ші жылғымен толық сәйкес келді, ал J1 белгісі қолданылған чиптердің мөлшерін көрсететін. 1750 және 1764 жылдары бұл із кесілген. 1700 және 1750 модельдерінде R4 орнында резистор болды, Commodore инженері Фред Боуэннің сөзіне қарағанда, ол C64 және C128 компьютерлеріндегі кеңейту портындағы шағын уақыт айырмашылықтарын теңестірді. 1764 модельінде бұл резистор болмады. Боуэн және басқа CBM инженерлері, резистор қосылмаса, 1764-ті C128-мен, ал резистор алынбаса, 1700/1750-ні C64-пен пайдалануға кеңес берді. 1750 модельін тексеру үшін $DF00 адресінің 4-битін оқуға болады, ол 1750-де 1-ге, ал 1700 немесе 1764-те 0-ге тең болды. Бірақ, бұл әдіс 1700 мен 1764 арасындағы айырмашылықты анықтамайды. Осы мәселені шешу үшін бағдарламашылар REU жадына жазып, содан оқып, орнатылған жадтың көлемін білді.

РЕУ бағдарламалық қамтамасыз ету

Бағдарламалық қамтамасының шағын бөлігі REU-ды қолданды. Commodore компаниясының басқа да қосымша өнімдері сияқты, олардың C64 және C128 компьютерлерінің көп санына қарағанда REU-дың орнатылған базасы салыстырмалы түрде аз болғандықтан, бағдарлама жасаушылар REU-ды қолдауға көп уақыт пен күш жұмсауға тартынды. Коммерциялық қолдаудың болмауы сату көлемін күтілген деңгейден төмендетті. REU, Commodore дискілеріне немесе тіпті саудада қол жетімді қатты дискілерге қарағанда жоғары жылдамдығының арқасында, Commodore BBS қауымдастығында қолдау тапты. Мысалы, Color64 бағдарламасы BBS бөлімдері арасында ауысқанда жүктеу уақытын қысқарту үшін REU қажет болды. REU-лар қосымша жадты RAM дискі ретінде пайдалануға арналған бағдарламамен бірге келді, бірақ RAM дискісінің коммерциялық бағдарламалармен үйлесімділігі әртүрлі болды, себебі кейбір коммерциялық бағдарламалар Commodore 1541 дискісінің ерекшеліктеріне көп тәуелді болды. Сонымен қатар, көптеген коммерциялық бағдарламалар RAM дискісіндегі бағдарламалық қамтамасы иеленген жад кеңістігін жай ғана жаңа деректермен жаздырып тастады. GEOS операциялық жүйесі REU-ды RAM дискі ретінде қолдады, CP/M-нің C128 нұсқасы да солай, ал кейбір дискілерді көшіру бағдарламалары REU-ды бір дискіні пайдаланып жоғары жылдамдықта көшіруді жеңілдету үшін пайдаланды. GEOS және басқа бағдарламалар REU-ды хост-машинаның негізгі жадында жылдам деректерді ауыстыру үшін де қолданды, дерек блогын REU-ға сақтап, содан кейін оны басқа жерге қайтару арқылы. Бұл әдіс кезінде, машинаның деректер шинасымен тек ауыстырылатын деректер ғана жүреді, ал әдеттегі әдісте компьютердің CPU-сы деректерді ауыстыруды жүзеге асырады, сондықтан шина сыйымдылығының кем дегенде үштен екі бөлігі нұсқауларды алуға, ал тек төрттен бірі немесе одан да азы пайдалы деректерге жұмсалады.