User Tag List

Показано с 1 по 10 из 1612

Тема: ZX_Multi_Card

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    И реализация этой фичи только в Спектрумах, оснащеных картой ZXMC2. Не думаю, что таких много.
    я так понимаю zxmc2 по дефолту в фениксе
    а их там штук 6 ревизий по 10+ плат
    ...не уверен что он во всех ревизиях конечно...


    Цитата Сообщение от caro Посмотреть сообщение
    Владельцы ZXMC2 могли бы написать сравнительный тест, например количество умножений за кадр,
    программным и аппаратным умножителем.
    а если я не владелец zxmc2?
    да и некуда мне его вставлять...


    ну а вскорости умножения zxmc2 похвастаться не может
    вот в точности этого умножения да
    тк все умножалки делилики по скорости не уступающие zxmc2
    при этом дают только 8битный результат с пониженной точностью


    так же можно было бы запилить из умножения полу хардварное деление 8b/8b=16b (8бит дробная часть)
    если в аврке есть место под 256 байт таблицу (1/х)*256
    (деление на 1 будет с небольшой ошибкой тк можно занести в таблицу только 255 когда нужно 256)

    просто умножаем делимое на делитель пропущенный через таблицу





    - - - Добавлено - - -

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


    например так
    a = число A
    c = число B
    b = адрес порта для нужной операции \ ну или в с чтоб можно было быстро читать результат при помощи in a,(n)

    out (C),a
    in a,(C)

    out (C),a
    in l,(C)
    inc b
    in h,(C)

    с таким бы умножением\делением
    z80 бы уже не смог тягаться

    - - - Добавлено - - -

    как щас
    Код:
    	ld bc,$E8EF	;10
    	out (c),e	;12
    	inc b		;4
    	out (c),d	;12
    	inc b		;4
    	in l,(c)	;12
    	inc b		;4
    	in h,(c)	;12
    			;	70t
    как могло бы быть
    Код:
    	ld c,port	;7
    	out (c),a	;12
    	in l,(c)	;12
    	inc c		;4
    	in h,(c)	;12
    			;	47t
    если бы порт выдавал 2 байта по очереди
    Код:
    	ld c,port	;7
    	out (c),a	;12
    	in l,(c)	;12
    	in h,(c)	;12
    			;	43t

    ну и 8 битный результат мог бы получаться так
    Код:
    	ld c,port	;7
    	out (c),a	;12
    	in a,(port)	;11
    			;	30t
    хотя с самой аморальной формой софтварного умножения\деления\и всего чего только захочешь одновременно
    6b ? 8b = 8b
    ld a,(hl) не особо то потягаешься
    Последний раз редактировалось NEO SPECTRUMAN; 19.10.2019 в 08:27.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •