Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Commodore RAM кеңейту блогы (REU) – сыртқы RAM модульдерінің жиынтығы. Commodore 128 үй компьютері таныстырылған кезде, осы модель үшін екі REU жарияланды: 1700 (128 КБ) және 1750 (512 КБ) REU. Кейін Commodore өздерінің Commodore 64 моделі үшін үшінші модельді ұсынды: 1764 (256 КБ).
The Commodore RAM Expansion Unit (REU) is a range of external RAM add ons. At the time of introduction of the Commodore 128 home computer, two REUs were announced for that model; the 1700 (128 KB) and 1750 (512 KB) REUs. Later, Commodore introduced a third model, for their Commodore 64 model: the 1764 (256 KB)
REU қажеттілігі Commodore басшылығы жадының үлкен картасын талқылауға қарамастан, жадының көлемін шектейтін арнайы жадты басқару блогының (MMU) соңғы нұсқасын пайдаланбауға шешім қабылдаған кезде туындады. 1985 жылғы Тұтынушы Электроникасы Көрмесіне (CES) барған инженерлер енді қолдау көрсетілмейтін жад көлемін жарнамалайтын жарнама парақшаларымен және билбордтармен бетпе-бет келді, соңында жоғары басшылық қосымша жадты (512 КБ-ға дейін) қайда қосуға болатынын сұрады. 1985 жылы Чикагода өткен CES көрмесіне дейін инженерлер жаңа REU модульдерінің тікелей жадқа кіруін (DMA) көрсету үшін айналатын жер шарын демонстрациялай алды. REU аппараттық құралдарын Франк Палия, ал арнайы RAM кеңейту контроллерін (REC) интегралдық схемасын (IC) Виктор Андраде жобалады. Фред Боуэн мен Терри Райан C128 KERNAL және BASIC жүйелерін REU-ға бейімдеді, ал Хедли Дэвис 1980-жылдардың ортасындағы анимацияның әсерлі мысалы болған жер шарын айналдыру демо-нұсқасын жазды.
The need for the REU came about when Commodore management decided to not use the final version of the custom Memory Management Unit (MMU) which then limited the size of memory in spite of early discussion of a larger memory map. Engineers traveling to the 1985 Consumer Electronics Show (CES) were confronted with flyers and billboards advertising a memory size that was no longer supported and finally the top management asked where the additional memory (up to 512 KB) would plug in. By the time of the 1985 CES show in Chicago, the engineers were able to display a spinning globe of the earth as a demonstration of Direct Memory Access (DMA) by the new REU units. The REU hardware was designed by Frank Palia and the dedicated RAM Expansion Controller (REC) integrated circuit (IC) was designed by Victor Andrade. Fred Bowen and Terry Ryan adapted the C128's KERNAL and BASIC to accommodate the REU natively and Hedley Davis wrote the globe spinning demo which was an impressive display of animation in the mid 1980s.
Жабдықтың сипаттамасы
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) өзгерту схемалары пайда болды.
Although the C128 could access more than 64 KB of RAM through bank switching, the memory inside the REU could only be accessed by memory transfers (STORE/LOAD/SWAP/COMPAREs) between the main memory and the REU memory. Additionally, the C128's built in BASIC 7.0 had three statements, STASH, FETCH, and SWAP, for storing and retrieving data from the REU. Officially, only the 1700 and 1750 were supported on the C128. The 256 KB model, the 1764, was released for the C64 at the same time. There were only minor differences between the three models. The original C64 power supply could not support the additional load presented by the 1764 so a 2.5 ampere C64 power supply was included. The 1700 uses sixteen 4164 64kx1 DRAM ICs, the 1764 has eight 41256 256kx1 DRAMs, and the 1750 has sixteen 41256 DRAMs. In practice, the difference between the 1764 and the earlier units had little effect on compatibility, and people used 1700s and 1750s successfully with the C64, and 1764s successfully with the C128, although the C64's stock power supply was inadequate to reliably handle the power load of any of them. Some dealers unbundled the 1764 and the power supply in order to sell the power supply to C64 users, and/or upgrade the 1764 to 512 KB. The REU model 1750 can be modified to support up to 2MB on memory by installing 2 additional ICs for bank switch. There is only one source of software incompatibility in this modification: software that doesn't set the bits at $DF06 to the same value at all times, or sets the bits to a bank of 512 kb that isn't installed yet, won't work. During the late 1980s, there was a shortage of DRAM thus 1750s were rare and expensive. However it was comparatively easy to upgrade a 1700 or 1764 to 512 KB. Several firms did this commercially, either selling upgraded units or upgrading customer supplied units. In the early 1990s, DIY modification schemes to increase the capacity of an REU to one megabyte or higher appeared on various online services.
Үлгі айырмашылықтары
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 жадына жазып, содан оқып, орнатылған жадтың көлемін білді.
The 1700s circuit board was identical to that of the 1750, and a trace marked J1 indicated the size of the chips used. On the 1750 and 1764, this trace was cut. The 1700 and 1750 had a resistor at position R4 that, according to Commodore engineer Fred Bowen, compensated for subtle timing differences in the expansion port on the C64 and C128. The 1764 lacked that resistor. Bowen and other CBM engineers recommended against using a 1764 with a C128 unless the resistor was added, or a 1700/1750 with a C64 unless the resistor was removed. It was possible to check for the presence of a 1750 by reading memory address $DF00's bit 4, which was 1 on a 1750, and 0 on a 1700 or 1764. However, since this procedure would not distinguish between a 1700 and a 1764. To solve this, programmers wrote to, then read from, the REU's RAM to find out the amount of memory installed.
РЕУ бағдарламалық қамтамасыз ету
Бағдарламалық қамтамасының шағын бөлігі 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-сы деректерді ауыстыруды жүзеге асырады, сондықтан шина сыйымдылығының кем дегенде үштен екі бөлігі нұсқауларды алуға, ал тек төрттен бірі немесе одан да азы пайдалы деректерге жұмсалады.
A small percentage of software made use of the REUs. Like other add on products from Commodore, their relatively small installed base relative to the huge number of C64s & C128s made software developers hesitant to invest much time and effort in supporting REUs. The lack of commercial support kept sales lower than they otherwise might have been. Due to its high speed relative to Commodore's floppy drives or even the commercially available hard drives, REUs did see support in the Commodore BBS community. Programs such as Color64 required a REU to minimize load times when switching between sections of the BBS. The REUs came with software to use the extra memory as a RAM disk, but the RAM disk's compatibility with commercial software varied as some commercial software relied heavily on various quirks of the Commodore 1541 floppy drive. Additionally, many commercial programs simply overwrote the memory space occupied by the RAM disk software. The GEOS operating system had built in support for the REU as a RAM disk, as did the C128's version of CP/M, and some disk copy programs used the REU to facilitate high speed copying with a single disk drive. GEOS as well as other programs even used the REU for quick memory transfers within the host machine's main memory by storing a memory block into the REU and then fetching it back to another location. Using this method, only the actual data to be transferred needed to travel on the machine's data bus—unlike the ordinary method, which had the computer's CPU do the transfer, thus spending at least three quarters of the bus capacity on instruction fetches and only one quarter or less on payload data.