User Tag List

Страница 65 из 162 ПерваяПервая ... 616263646566676869 ... ПоследняяПоследняя
Показано с 641 по 650 из 1612

Тема: ZX_Multi_Card

  1. #641

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Ports are equivalent. The choice is on the condition A8 = 0.

    Bit D3 Always = 1.
    What is your ports adressation ?

    VELESOFT

    Добавлено через 33 минуты
    I write new fitmware for my K-MOUSE TURBO interface
    http://velesoft.speccy.cz/kmturbo-cz.htm

    New K-MOUSE 2008 features:
    - kempston mouse+wheel support
    - add detect port FEDF
    - add master/slave switch
    - master interface use kempston joystick port
    - slave interface use fuller joystick port
    - is possible read port 7FFD (last 8bit writed value) - this feature remove crash on original ZX128/+2 (this computers contain HW bug and is impossible read port 7FFD)
    - return to data bus correct low 8bit adress (#FF) of interrupt vector (remove problem with uncomplette IM2 vector table)
    - add port FEDF for detection K-MOUSE 2008


    //Ports adressation:

    //master K-MOUSE ports
    //====================
    //buttons = 64223(#FADF) 1xxxx0x0 11011111 ( D4-D7=4bit wheel counter )
    //X-AXIS = 64479(#FBDF) 1xxxx0x1 11011111
    //Y-AXIS = 65503(#FFDF) 1xxxx1x1 11011111
    //detect = 65247(#FEDF) 1xxxx1x0 11011111 ( return always byte 128 }
    //A-MOUSE/KEMPSTON JOY = 31 (#1F) 00011111 ( port #1F is available on master + switch EN31 on )

    //slave K-MOUSE ports
    //====================
    //buttons = 31455(#7ADF) 0xxxx0x0 11011111 ( D4-D7=4bit wheel counter )
    //X-AXIS = 31711(#7BDF) 0xxxx0x1 11011111
    //Y-AXIS = 32735(#7FDF) 0xxxx1x1 11011111
    //detect = 32479(#7EDF) 0xxxx1x0 11011111 ( return always byte 128 }
    //FULLER JOYSTICK =127 (#7F) 01111111 ( port #7F is available on slave mode always )

    //K-MOUSE: 3 buttons + wheel support
    //mouse buttons port 64223(#FADF):
    // D0- right button
    // D1- left button
    // D2- middle button
    // D3- always log.1
    // D4- \
    // D5- \ 4bit mouse
    // D6- / wheel counter
    // D7- /
    //(press button = log.0)

    //AMIGA-MOUSE / KEMPSTON JOYSTICK: port 31(#1F)
    //D0- XB / joy RIGHT
    //D1- YB / joy LEFT
    //D2- XA / joy DOWN
    //D3- YA / joy UP
    //D4- left button / joy FIRE 1
    //D5- right button / joy FIRE 2
    //D6- middle button / joy FIRE 3
    //D7- always log.0
    //(all signals on port #1F is active in log.1)

    //FULLER JOYSTICK: port 127(#7F)
    //D0- YA / joy RIGHT
    //D1- XA / joy LEFT
    //D2- YB / joy DOWN
    //D3- XB / joy UP
    //D4- always log.1
    //D5- middle button / joy FIRE 3
    //D5- right button / joy FIRE 2
    //D7- left button / joy FIRE 1
    //(all signals on port #7F is active in log.0)
    Последний раз редактировалось VELESOFT; 29.03.2008 в 20:45. Причина: Добавлено сообщение

  2. #642

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от VELESOFT
    What is your ports adressation ?
    Код:
    ; 2) Mouse PS/2->Kempston Mouse
    ;    Адреса портов (адресация полная)
    ;	0xFADF (64223)  - buttons
    ;	0xFEDF (65247)  - buttons
    ;	d7..d4 = 1111 или Z (для мышки с колесом)
    ;	d3 - всегда 1
    ;	d2 - средняя кнопка
    ;	d1 - левая кнопка
    ;	d0 - правая кнопка
    ;	при одновременном нажатии левой и правой кнопки
    ;	их назначение меняется местами.
    ;	0xFBDF (64479)  - X
    ;	0xFFDF (65503)  - Y

  3. #643

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Код:
    ; 2) Mouse PS/2->Kempston Mouse
    ;    Адреса портов (адресация полная)
    ;	0xFADF (64223)  - buttons
    ;	0xFEDF (65247)  - buttons
    ;	d7..d4 = 1111 или Z (для мышки с колесом)
    ;	d3 - всегда 1
    ;	d2 - средняя кнопка
    ;	d1 - левая кнопка
    ;	d0 - правая кнопка
    ;	при одновременном нажатии левой и правой кнопки
    ;	их назначение меняется местами.
    ;	0xFBDF (64479)  - X
    ;	0xFFDF (65503)  - Y
    Why is port FADF on FEDF ?

    VELESOFT

  4. #644

    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Камиль, а поразрядную дешифрацию для портов ZXMC1, ZXMC2 ты не мог бы дать?

  5. #645

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от VELESOFT
    Why is port FADF on FEDF ?
    Made as in the original scheme, where both ports are identical.

    Добавлено через 2 минуты
    Цитата Сообщение от Black_Cat Посмотреть сообщение
    Камиль, а поразрядную дешифрацию для портов ZXMC1, ZXMC2 ты не мог бы дать?
    Сейчас у меня используется полная дешифрация всех портов.
    Последний раз редактировалось caro; 29.03.2008 в 21:34. Причина: Добавлено сообщение

  6. #646

    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Сейчас у меня используется полная дешифрация
    это относится к обеим мультикартам?

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

  8. #647

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black_Cat
    это относится к обоим мультикартам?
    В ZXMC1 была применена не полная дешифрация по младшему адресному байту,
    что во многих случаях привело к необходимости доработки карт, так что я считаю
    это было не удачное упрощение схемы, от чего удалось избавится в ZXMC2.

  9. #648

    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    В ZXMC1 была применена не полная дешифрация по младшему адресному байту
    а ты не мог бы её дать для каждого порта с учётом внесённых доделок

  10. #649

    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,726
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    91 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black_Cat Посмотреть сообщение
    а ты не мог бы её дать для каждого порта с учётом внесённых доделок
    Вот базовые порты ZXMC1:
    Код:
    ;======================================================
    ; 1) Клавиатура AT -> ZX-kbd
    ;       0xXXFE - порты клавиатуры (256 портов чтения)
    ;======================================================
    ; 2) Mouse PS/2->Kempston Mouse
    ;    Адреса портов (адресация полная)
    ;	0xFADF (64223) = A8=0,A10=0 - buttons
    ;	0xFEDF (65247) = A8=0,A10=1 - buttons
    ;	d7..d4 = 1111 или Z
    ;	d3 - всегда 1
    ;	d2 - средняя кнопка
    ;	d1 - левая кнопка
    ;	d0 - правая кнопка
    ;	при одновременном нажатии левой и правой кнопки
    ;	их назначение меняется местами.
    ;	0xFBDF (64479) = A8=1,A10=0 - X
    ;	0xFFDF (65503) = A8=1,A10=1 - Y
    ;======================================================
    ; 2a) Порты скан-кодов клавиатуры (8 портов)
    .equ	scanbuf	=0x80DF		;буфер скан-кодов IBM (6 портов)
    .equ	statkbd =0x86DF		;текущий статус клавиатуры
    ;	Бит 0 - Scroll Lock
    ;	Бит 1 - Num Lock
    ;	Бит 2 - Caps Lock
    ;	Бит 6 - Shift
    ;	Бит 7 - Флаг нажатия
    .equ	lastkey	=0x87DF		;скан-код последней нажатой клавиши
    ;=================================================
    ; 3) Ext Modem -> Модем по Кондратьеву
    ; Базовый адрес: 0xF8EF (63727) - 8 портов
    ; Порты модема:
    ;------ Чтение ------------------
    .equ	DAT_RS	=0xF8EF		;Данные на чтение и запись
    .equ	INT_IR	=0xFAEF		;Идентификаторы прерываний	
    .equ	LIN_CR	=0xFBEF		;Line Control registr
    .equ	STA_RS	=0xFDEF		;Регистр статуса RS232
     .equ	RDY_RX	=0		;бит гот.RX
     .equ	RDY_TX	=5		;бит гот.Буф.TX
     .equ	EMP_TX	=6		;Передатчик пуст
    .equ	MOD_SR	=0xFEEF		;Modem Status Registr
     .equ	CTS	=4		;Clear to Send
     .equ	DSR	=5		;Data Set Ready
     .equ	DCD	=7		;Data Carrier Detect
    ;------ Запись ------------------
    .equ	DIV_L	=0xF8EF		;мл.байт скорости (DLAB=1)
    .equ	DIV_H	=0xF9EF		;ст.байт скорости (DLAB=1)
    .equ	INT_EN	=0xF9EF		;биты прерываний (DLAB=0)
    .equ	LIN_SW	=0xFBEF		;Line Switch
     .equ	DLAB	=7		;бит упр. скоростью
    .equ	MOD_CR	=0xFCEF		;Modem Control Registr
     .equ	RTS	=1		;Request to Send
     .equ	DTR	=0		;Data Terminal Ready
    ;=================================================
    ; 3a) RTC - часы реального времени PCF8583
    ; Базовый адрес: 0xE0EF (57583) - 8 портов
    .equ	BA_rtc	= 0xE0EF	;базовый адрес
    .equ	t_sta	= 0xE0EF	;статус/команда
    .equ	t_sec	= 0xE1EF	;секунды
    .equ	t_min	= 0xE2EF	;минуты
    .equ	t_hou	= 0xE3EF	;часы
    .equ	t_day	= 0xE4EF	;дни месяца
    .equ	t_mon	= 0xE5EF	;месяц
    .equ	t_yea	= 0xE6EF	;год
    .equ	t_wkd	= 0xE7EF	;день недели
    ;=================================================
    Дополнительные порты для ZXMC2 выложу завтра.

  11. #650

    Регистрация
    04.04.2007
    Адрес
    Praha
    Сообщений
    753
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от caro Посмотреть сообщение
    Made as in the original scheme, where both ports are identical.

    Добавлено через 2 минуты
    Сейчас у меня используется полная дешифрация всех портов.
    But on high adress bus original Kempston mouse decode only A9 and A8 and A10-A15 is ignored. Buttons port is on any xxxxxx10 xx0xxxxx, not only FADF and FEDF. All russian Kempston mouse clones use too different port adressation. Not exist software what use uncomplette adressation of kempston mouse ports. ZX emulators on PC use full 16bit adressation and software work perfect. Is in vain copy port FADF to FEFD, so I use FEDF port for next features (K-MOUSE 2008 detection = in FEDF return byte 128)

    VELESOFT

Страница 65 из 162 ПерваяПервая ... 616263646566676869 ... ПоследняяПоследняя

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

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

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

Ваши права

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