|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июл 25, 2004 20:15:52 Не подскажите, где можно найти инфу по программированию железа, в частности интересует как написать драйвер для мышки ps/2 и com, а также как программировать флоппи через порты ввода/вывода. Зарание спасибо. |
|
|
Дата: Июл 26, 2004 04:32:21 Смотри тут - http://www.wasm.ru/forum/index.php?action=vthread&forum=3&topic=5962 Скачай фйал портов(Это когда по другой ссылке перейдёш) - там популярно написано всё по интересующей теме - если не поймёш что то то спроси |
|
|
Дата: Июл 26, 2004 22:46:56 А есть ли где информация по программированию вообще всякого разного железа? |
|
|
Дата: Июл 27, 2004 00:58:52 Еще очень интересует как работать с FDD. Спасибо. |
|
|
Дата: Июл 27, 2004 07:44:15 2 VitalikV Если тебя не устраивает выписка из списка портов по ссылке которую я давал(http://wasm.ru/forum/index.php?action=vthread&forum=3&topic=5953 &page=-1), То извени значит ты не там спрашивал, а дословно в примерах думаю обьяснять тебе не кто не будет... ---------------------------------------------------------------------- --------- 03F0-03F7 ---- FDC 1 (1st Floppy Disk Controller) second FDC at 0370 (8272, 8272A, NEC765) (82072, 82077AA for perpendicular recording at 2.8Mb) 03F0 r diskette EHD controller board jumper settings (82072AA) bit 7-6 drive 3 bit 5-4 drive 2 bit 3-2 drive 1 bit 1-0 drive 0 = 00 1.2Mb = 01 720Kb = 10 2.8Mb = 11 1.4Mb 03F0 r diskette controller status A (PS/2) bit 7 interrupt pending bit 6 -DRV2 second drive installed bit 5 step bit 4 -track 0 bit 3 head 1 select bit 2 -index bit 1 -write protect bit 0 +direction 03F0 r diskette controller status A (PS/2 model 30) bit 7 interrupt pending bit 6 DRQ bit 5 step F/F bit 4 -track 0 bit 3 head 1 select bit 2 +index bit 1 +write protect bit 0 -direction 03F1 r diskette controller status B (PS/2) bit 7-6 =1 reserved bit 5 drive select (0=A:, 1=B:) bit 4 write data bit 3 read data bit 2 write enable bit 1 motor enable 1 bit 0 motor enable 0 03F1 r diskette controller status B (PS/2 model 30) bit 7 -DRV2 second drive installed bit 6 -DS1 bit 5 -DS0 bit 4 write data F/F bit 3 read data F/F bit 2 write enable F/F bit 1 -DS3 bit 0 -DS2 03F2 w diskette controller DOR (Digital Output Register) bit 7-6 reserved on PS/2 bit 7 = 1 drive 3 motor enable bit 6 = 1 drive 2 motor enable bit 5 = 1 drive 1 motor enable bit 4 = 1 drive 0 motor enable bit 3 = 1 diskette DMA enable (reserved PS/2) bit 2 = 1 FDC enable (controller reset) = 0 hold FDC at reset bit 1-0 drive select (0=A 1=B ..) 03F3 tape drive register (on the 82077AA) bit 7-2 reserved, tri-state bit 1-0 tape select = 00 none, drive 0 cannot be a tape drive. = 01 drive1 = 10 drive2 = 11 drive3 03F4 r diskette controller main status register bit 7 = 1 RQM data register is ready 0 no access is permitted bit 6 = 1 transfer is from controller to system 0 transfer is from system to controller bit 5 = 1 non-DMA mode bit 4 = 1 diskette controller is busy bit 3 = 1 drive 3 busy (reserved on PS/2) bit 2 = 1 drive 2 busy (reserved on PS/2) bit 1 = 1 drive 1 busy (= drive is in seek mode) bit 0 = 1 drive 0 busy (= drive is in seek mode) Note: in non-DMA mode, all data transfers occur through port 03F5h and the status registers (bit 5 here indicates data read/write rather than than command/status read/write) 03F4 w diskette controller data rate select register bit 7-2 reserved on 8272 bit 7 = 1 software reset (self clearing) 82072/82077AA bit 6 = 1 power down 82072/82077AA bit 5 = 0 reserved on 8272 and 82077AA PLL select bit on 82072 bit 4-2 write precompensation value, 000 default bit 1-0 data rate select = 00 500 Kb/S MFM 250 Kb/S FM = 01 300 Kb/S MFM 150 Kb/S FM = 10 250 Kb/S MFM 125 Kb/S FM = 11 1Mb/S MFM illegal FM on 8207x 03F5 r diskette command/data register 0 (ST0) bit 7-6 last command status = 00 command terminated successfully = 01 command terminated abnormally = 10 invalid command = 11 terminated abnormally by change in ready signal bit 5 = 1 seek completed bit 4 = 1 equipment check occurred after error bit 3 = 1 not ready bit 2 = 1 head number at interrupt bit 1-0 = 1 unit select (0=A 1=B .. ) (on PS/2 01=A 10=B) status register 1 (ST1) bit 7 end of cylinder; sector# greater then sectors/track bit 6 = 0 bit 5 = 1 CRC error in ID or data field bit 4 = 1 overrun bit 3 = 0 bit 2 = 1 sector ID not found bit 1 = 1 write protect detected during write bit 0 = 1 ID address mark not found status register 2 (ST2) bit 7 = 0 bit 6 = 1 deleted Data Address Mark detected bit 5 = 1 CRC error in data bit 4 = 1 wrong cylinder detected bit 3 = 1 scan command equal condition satisfied bit 2 = 1 scan command failed, sector not found bit 1 = 1 bad cylinder, ID not found bit 0 = 1 missing Data Address Mark status register 3 (ST3) bit 7 fault status signal bit 6 write protect status bit 5 ready status bit 4 track zero status bit 3 two sided status signal bit 2 side select (head select) bit 1-0 unit select (0=A 1=B .. ) 03F5 w diskette command register. The commands summarized here are mostly multibyte commands. This is for brief recognition only. MFM = MFM mode selected, opposite to MF mode. HDS = head select DS = drive select MT = multi track operation SK = skip deleted data address mark Command # bytes D7 6 5 4 3 2 1 0 read track 9 0 MFM 0 0 0 0 1 0 0 0 0 0 0 HDS DS1 DS0 specify 3 0 0 0 O O O 1 1 sense drive status 2 0 0 0 0 0 1 0 0 0 0 0 0 0 HDS DS1 DS0 write data 9 MT MFM 0 0 0 1 0 1 0 0 0 0 0 HDS DS1 DS0 read data 9 MT MFM SK 0 0 1 1 0 0 0 0 0 0 HDS DS1 DS0 recalibrate 2 0 0 0 0 0 1 1 1 0 0 0 0 0 0 DS1 DS0 sense interrupt status 1 0 0 0 0 1 0 0 0 write deleted data 9 MT MFM 0 0 1 0 0 1 0 0 0 0 0 HDS DS1 DS0 read ID 2 0 MFM 0 0 1 0 1 0 0 0 0 0 0 HDS DS1 DS0 read deleted data 9 MT MFM SK 0 1 1 0 0 0 0 0 0 0 HDS DS1 DS0 format track 10 0 MFM 0 0 1 1 0 1 0 0 0 0 0 HDS DS1 DS0 dumpreg ** 1 0 0 0 0 1 1 1 0 seek 3 0 0 0 0 1 1 1 1 0 0 0 0 0 HDS DS1 DS0 version ** 1 0 0 0 1 0 0 0 0 scan equal * 9 MT MFM SK 1 0 0 0 1 0 0 0 0 0 HDS DS1 DS0 perpendicular mode ** 2 0 0 0 1 0 0 1 0 0 0 0 0 0 0 WGATE GAP configure ** 4 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 verify 9 MT MFM SK 1 0 1 1 0 EC 0 0 0 0 HDS DS1 DS0 scan low or equal * 9 MT MFM SK 1 1 0 0 1 0 0 0 0 0 HDS DS1 DS0 scan high or equal * 9 MT MFM SK 1 1 1 0 1 0 0 0 0 0 HDS DS1 DS0 relative seek ** 3 1 DIR 0 0 1 1 1 1 0 0 0 0 0 HDS DS1 DS0 BEWARE: not every invalid command is treated as invalid! * Note: the scan commands aren't mentioned for the 82077AA. ** Note: EHD controller commands. 03F6 reserved on FDC 03F6 r/w FIXED disk controller data register bit 7-4 reserved bit 3 = 0 reduce write current 1 head select 3 enable bit 2 = 1 disk reset enable 0 disk reset disable bit 1 = 0 disk initialization enable 1 disk initialization disable bit 0 reserved 03F7 r/w harddisk controller bit 6 FIXED DISK write gate bit 5 FIXED DISK head select 3 / reduced write current bit 4 FIXED DISK head select 2 bit 3 FIXED DISK head select 1 bit 2 FIXED DISK head select 0 bit 1 FIXED DISK drive 1 select bit 0 FIXED DISK drive 0 select 03F7 r diskette controller DIR (Digital Input Register, PC/AT mode) bit 7 = 1 diskette change bit 6-0 tri-state on FDC 03F7 r diskette controller DIR (Digital Input Register, PS/2 mode) bit 7 = 1 diskette change bit 6-3 = 1 bit 2 datarate select1 bit 1 datarate select0 bit 0 = 0 high density select (500Kb/s, 1Mb/s) conflicts with bit 0 FIXED DISK drive 0 select 03F7 r diskette controller DIR (Digital Input Register, PS/2 model 30) bit 7 = 0 diskette change bit 6-4 = 0 bit 3 -DMA gate (value from DOR register) bit 2 NOPREC (value from CCR register) bit 1 datarate select1 bit 0 datarate select0 conflicts with bit 0 FIXED DISK drive 0 select 03F7 w configuration control register (PC/AT, PS/2) bit 7-2 reserved, tri-state bit 1-0 = 00 500 Kb/S mode (MFM) = 01 300 Kb/S mode (MFM) = 10 250 Kb/S mode (MFM) = 11 1 Mb/S mode (MFM) (on 82072/82077AA) conflicts with bit 0 FIXED DISK drive 0 select 03F7 w configuration control register (PS/2 model 30) bit 7-3 reserved, tri-state bit 2 NOPREC (has no function. set to 0 by hardreset) bit 1-0 = 00 500 Kb/S mode (MFM) = 01 300 Kb/S mode (MFM) = 10 250 Kb/S mode (MFM) = 11 1 Mb/S mode (MFM) (on 82072/82077AA) conflicts with bit 0 FIXED DISK drive 0 select ---------------------------------------------------------------------- --------- 0370-0377 ---- FDC 2 (2nd Floppy Disk Controller) first FDC at 03F0 (8272, 8272A, NEC765) (82072, 82077AA for perpendicular recording at 2.8Mb) 0370 r diskette Extra High Density controller board jumpers (AT) 0370 r diskette controller status A (PS/2, PS/2 model 30) 0371 r diskette controller status B (PS/2, PS/2 model 30) 0372 w diskette controller DOR (Digital Output Register) 0374 r diskette controller main status register 0374 w diskette controller datarate select register 0375 r/w diskette controller command/data register 0376 r/w (2nd FIXED disk controller data register) 0377 r diskette controller DIR (Digital Input Register) 0377 w select register for diskette data transfer rate Про програмирование железа посмотри тута - http://www.nondot.org/sabre/os/ А вообще програмирование железа всего не когда не бывает в одном месте - для всего всё своё... |
|
|
Дата: Июл 27, 2004 07:54:08 Спасибо, на первый взгляд все понятно, пойду разбираться |
|
|
Дата: Июл 29, 2004 02:58:01 есть несколько толковых мануалов по программированию флопов: * Контроллер НГМД i8272.Описание работы контроллера и системы команд * Ю. С. Лукач, А. Е. Сибиряков АРХИТЕКТУРА ВВОДА-ВЫВОДА ПЕРСОНАЛЬНЫХ ЭВМ IBM PC * и др. говори куда выложить или поищи их в сети сам - они везде есть |
|
|
Дата: Июл 29, 2004 05:31:22 2 kaspersky - Какие люди и без охраны:) А по остальному железу не чего нет? например по USB? |
|
|
Дата: Июл 29, 2004 10:22:41 OK! C НГМД разобрался, а нету чегонибудь по видяхам, но только для нормальных режимов хотябы 800х600 24 бит Буду очень благодарен! |
|
|
Дата: Июл 29, 2004 13:32:39 to Same где-то была у меня целая е-бука по программированию USB. толковая книжка. если надо - поищу, пиши. |
|
|
Дата: Июл 29, 2004 14:56:15 2 plext0r - куда писать? 2 VitalikV - А чё с PS/2 не разобрался - я же тебе ссылку давал? Видюхами я не занимался(ещё пока) так что предложить не чего не могу |
|
|
Дата: Июл 29, 2004 17:17:24 Same спасибо, с PS/2 все OK. А на счет видюх не знаешь где спросить? |
|
|
Дата: Июл 30, 2004 03:15:38 2 VitalikV - На этом форуме есть люди кто знает - но вот ответят ли они... Мне кроме как Vesa посаветовать не чего - если что встречу скажу - Ты встретиш тоже говори = мож в будущем пригодится |
|
|
Дата: Июл 30, 2004 07:08:32 Same - OK |
|
|
Дата: Июл 30, 2004 07:10:24 VitalikV скока можно говорить, что книжки чичтать надо, Кулакова, Гука, к примеру, Зубкова, на нондот орг мануалоф на данную тему до 屁股. Ф чём проблемы то ????? |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.159 |