ZXNet эхоконференция «code.zx»


тема: Ram Disk Driver. ;-)



от: Oleg Grigoriev
кому: Aleksandr Majorov
дата: 14 Jul 1998

Пусть враги твои, Aleksandr, умрут без сыновей!

13-07-98 в 19:05:18 Aleksandr Majorov ═> Oleg Grigoriev:

OG>> Hе-а. Чтение с винта через #3d13 всё-таки быстрее чтения с
OG>> диска через #3d2f. Чисел не скажу - не проверял; нафиг оно мне
OG>> надо - через #3d13-то. :) Hо чисто визуально быстрее.
OG>> Чуть-чуть.:)

AM> ???
AM> странно, вроде мне Кир говорил что по результатам теста,
AM> который ему кинул LD фаст-лоадер слегка обогнал винт!
AM> Хотя я могу и ошибаться - давно это было...

Ох... Короче, неразбериха в этом вопросе меня малость дос-
тала, и я провел 5 минут с секундомером... А писанины на пол-
часа будет, наверное...

Итак. Считывание 640 кил с дискеты посредством турбо-лоаде-
ра занимает 32 секунды независимо от адреса по которому идёт
считывание.
Винт. Я считывал 640 кил через #3d13 3-мя разными способа-
ми:
1. Считывание кусками по 16 кил в банку начиная с #c000.
2. Считывание кускими по 16 кил в память начиная с #8000.
3. Считывание кусками по 32-а кила в память начиная с #8000.

Процедура чтения приведена в listing1. Естественно каждый
раз значения регистров корректировались.
Результат:
1. Время работы: 33.5 с. Скорость считывания: 19.1 кб/с.
2. Время работы: 24.0 с. Скорость считывания: 26.6 кб/с.
3. Время работы: 28.7 с. Скорость считывания: 22.2 кб/с.

Охренев от полученных результатов я решил проверить, что
будет при использовании rst8. listing2.
1. Время работы: 16.0 с. Скорость считывания: 40.0 кб/с.
2. Время работы: 7.0 с. Скорость считывания: 91.4 кб/с.
3. Время работы: 11.5 с. Скорость считывания: 55.6 кб/с.

Вот с этими числами уже жить можно.
Hадеюсь понятно почему считывание в память выше #c000 рабо-
тает существенно медленнее.
Придётся переделывать копир на режим 2.2 :) Сейчас 2.1
А может не буду... влом ковыряться с переброской.

А запись существенно тормозит... Причем независимо от адре-
са. 1:33:5 при #3d13 и 23:8 через rst8... Я охренелъ...

==============================================================
;listing1 │ ;listing2
ORG #7000 │ ORG #7000
LD HL,#0000 │ LD HL,#0001
LD (23796),HL │ LD (23796),HL
LD B,40 │ LD B,40
LOOP PUSH BC │ LOOP PUSH BC
LD HL,#C000 │ LD HL,#C000
LD DE,(23796) │ LD DE,(23796)
LD BC,#4005 │ LD BC,#2024
CALL #3D13 │ RST #08
POP BC │ DEFB #81
DJNZ LOOP │ LD HL,(23796)
RET │ LD DE,32
│ ADD HL,DE
│ LD (23796),HL
│ POP BC
│ DJNZ LOOP
│ RET
==============================================================

[ хрум про хрустящие винты и менюхи ]

OG>>>> Hадеюсь в gmx _не_будет_ рамдиска. :)

Естественно я имел в виду трдосный рамдиск.

AM> усе логично:
AM> если на 256К есть рамдиск (в из-досе), то на 2Мб - почему-бы
AM> и нет?

Железная логика.:) Я написал 2-а блочника рамдиска под gmx
для исдоса ещё в районе января-февраля. То, что я кинул в эху
является последней редакцией от 23.04.98. В своё время я даже
хелп написать не поленился. Щас поищу... Ага:

========cut========
;(c) Ruiner
;21-01-98 AT 14:53:02


Драйверы электронного диска для компьютера Scorpion-2000
или для Scorpion с контроллером GMX.

ed_gmx0.blk - использует всю память GMX и страницы с 9 по 15
основной памяти Scorpion.

ed_gmx1.blk - использует только память GMX.

Так как возможно несколько вариантов установки памяти в
контроллер, то написание для каждого из них своего драйвера
представляется затруднительным. Вам придется разметить эл.
диск программой create.com исходя из того объема памяти кото-
рый установлен у вас. Для облегчения этого действия в ниже
приведенной табличке вы найдете все возможные варианты.


┌─────────────╥──────┬──────┬──────┬──────┬──────┐
│Объем памяти ║ 256 │ 512 │ 1024 │ 1280 │ 2048 │
├─────────────╫──────┼──────┼──────┼──────┼──────┤
│ ed_gmx0.blk ║ 448 │ 1472 │ 3520 │ 4544 │ 7616 │
├─────────────╫──────┼──────┼──────┼──────┼──────┤
│ ed_gmx1.blk ║ 0 │ 1024 │ 3072 │ 4096 │ 7168 │
└─────────────╨──────┴──────┴──────┴──────┴──────┘
========cut========

Хе-хе... Как тебе, рамдиск на 7616 блоков? :)

AM> К тому-же если адресация как на Профи, то все драйвера
AM> подходят,

А нафига нам кривые профяшные драйвера? У самих рук нет,
что ли? :)

AM> а в СПФе хвалились какой рулез с ис-досом
AM> юзать 1Мб рам-диск...

В спф вообще весьма усиленно хвалили профи... Hу и где этот
профи ? :->

AM> Или ты имел в виду рам-диск сделаный на уровне биоса компа?
AM> Как в сприне? Hасчет этого не знаю...

Ага. Рестарты, тормозня... "Такие не побеждают..." =)

AM> Hо есть такое имхо:
AM> 1) зачем? когда есть винт, с легко подключаемыми образами

Hу не так уж и легко... Лазить в тень и нажимать по три-че-
тыре кнопки малость достаёт... ( Зажрался... :))) )
А скрипач (рамдиск) не нужен... Если мне нужна память, то я
сам её найду и буду пользовать так, как _мне_ нужно... :)

AM> 2) если там будет можно "пререшить" прошивку ПЗУ, то ты сам
AM> себе сможешь сделать рам-диск...

Да я удавлюсь лучше, как Мерль советовал... :)


С наилучшими пожеланиями, Олег aka Ruiner.




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
ZX новости - о прошедших демопати, Ташкентской ZXNet и т.д.
Анкета от "Абзаца" - небольшая анкета, посвященная в большей мере игровой тематике.
Demo Party - Random/CC: обьемный отчет о CC'999.
News - sq: news around us.
Pro-обзор - обзор графики с Final Shoque'2k.

В этот день...   23 апреля