ПДП в РК для обновления динамического ОЗУ

Советский компьютер Радио-86РК (1986) и его клоны

Moderator: Shaos

User avatar
Paguo-86PK
Maniac
Posts: 267
Joined: 12 Apr 2011 20:43
Location: Tashkent

Re: ПДП в РК для обновления динамического ОЗУ

Post by Paguo-86PK »

b2m wrote:
Paguo-86PK wrote:Пропускать ADI 14 в конце.
Тогда бы константы чтения/записи можно было бы указывать от единицы…
Вот не понял ты всё-таки, зачем последний полубит в конце должен быть "как бы короче".
Ну я как бы выше расписал всю процедуру по тактам.
Оттуда и следует, что перед выходом из подпрограммы будет куча разного с восстановлением циклов ПДП, на что уйдёт >132 тактов, а 14×25 = 350. Тем самым, обеспечивается фора на ≈83 такта для внешнего цикла… :mrgreen:
b2m
Devil
Posts: 907
Joined: 26 May 2003 06:57

Re: ПДП в РК для обновления динамического ОЗУ

Post by b2m »

Paguo-86PK wrote:ADI 14
А, пардон, ты предлагаешь увеличивать константу записи всегда, кроме последнего полубита. Неэкономно это, на целых 2 байта...
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
User avatar
Paguo-86PK
Maniac
Posts: 267
Joined: 12 Apr 2011 20:43
Location: Tashkent

Re: ПДП в РК для обновления динамического ОЗУ

Post by Paguo-86PK »

b2m wrote:Неэкономно это, на целых 2 байта...
Предлагaю SUI заменить на ADI, а «JNZ AFC7A» заменить на «JZ AFC7A».
В соседней теме в дискуссиях с barsik'ом я выкладывал полностью переработанные подпрограммы и достаточно неплохо вник в алгоритмы их работы, сократив на ≥8 байтов… :mrgreen:
Где выбросил 8 RRC и вместо ветвления применил линейный код:

Code: Select all

        CPI     002H            ;  7
        SBB     A               ;  4
        ANI     0EEH            ;  7
        ADD     L               ;  4
        MOV     B,A             ;  5
LDBIT4: POP     AF              ; 10
b2m
Devil
Posts: 907
Joined: 26 May 2003 06:57

Re: ПДП в РК для обновления динамического ОЗУ

Post by b2m »

Paguo-86PK wrote:Предлагaю SUI заменить на ADI, а «JNZ AFC7A» заменить на «JZ AFC7A».
И чё, первый полубит будет всегда на 350 тактов короче, как и последний второй полубит? Надо будет и для первого полубита добавить ADI, я про эти два байта и говорил.
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: ПДП в РК для обновления динамического ОЗУ

Post by Alekcandr »

Любопытно. Никогда так глубоко не задумывался, будучи пользователем КР-02 в школьные годы. Это ж надо было так все запутать и ограничить, ради экономии на 5 микруках за рублей 10-ть.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
b2m
Devil
Posts: 907
Joined: 26 May 2003 06:57

Re: ПДП в РК для обновления динамического ОЗУ

Post by b2m »

Экономия даже 1 микросхемы, в масштабах страны, давала ощутимую выгоду. За это даже премии давали :)
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: ПДП в РК для обновления динамического ОЗУ

Post by Alekcandr »

b2m wrote:Экономия даже 1 микросхемы, в масштабах страны, давала ощутимую выгоду. За это даже премии давали :)
Ага, даже для ограниченного выпуска, когда без двух инженеров КР-02 из магазина не запускался. Требовалось личное присутствие двух инженеров в рядовой панельке (которые привезли плату, а потом с интересом посматривали пожевывая сопли в тепле после мороза) :mrgreen:
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
User avatar
Paguo-86PK
Maniac
Posts: 267
Joined: 12 Apr 2011 20:43
Location: Tashkent

Re: ПДП в РК для обновления динамического ОЗУ

Post by Paguo-86PK »

b2m wrote:
Paguo-86PK wrote:Предлагaю SUI заменить на ADI, а «JNZ AFC7A» заменить на «JZ AFC7A».
И чё, первый полубит будет всегда на 350 тактов короче, как и последний второй полубит? Надо будет и для первого полубита добавить ADI, я про эти два байта и говорил.
Вoт поэтому так сделать можно было и в родном Мониторе, выбросив 8 RRC и освободив целых восемь байтов.

Но представленный мною фрагмент, конечно, следует традициям родного монитора, но без ветвления.