User Tag List

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

Тема: Контроллер дисковода для УКНЦ, работающий с образами на micro-SD карте.

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

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

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,810
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    150
    Поблагодарили
    81 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Jarik65535 Посмотреть сообщение
    записываем в CSR код операции, затем в регистр данных пишем последовательно номер тома, номер блока, кол-во блоков, затем собственно пишем или читаем данные, причем постоянно проверяем бит готовности в CSR перед каждым обращением к регистру.
    Да, драйвер HX так и работает, только при чтении система может запросить не целый блок, а только одно слово, поэтому в операции сообщается не количество блоков для передачи, а количество байтов.

    Код:
    	Mov	#"CW, R0		; Packet type = COMMAND ; Command = Cmd_WRITE_RAW
    	Call	WOs
    
    	Mov	R3,  R0			; Unit
    	Call	ChOs
    
    	Mov	R2,  R0			; Block
    	Call	WOs
    
    	Clr	R0
    	Call	WOs			; 16bit Block -> 32bit Block
    
    	Mov	R1,   R0		; ByteCount
    	Add	(SP), R0		; R0 = ByteCount + fill count
    	Call	WOs
    1$:
    .IF	EQ	MMG$T
    	MovB	(R5)+, R0
    .IFF
    	Call	@$GTBYT
    	Mov	(SP)+, R0
    .EndC
    	Call	ChOs
    	SOB	R1, 1$
    
    	Mov	(SP)+, R1		; R1 = Bytes to fill
    	BEq	SkipFill		; Skip fill on full blocks
    	Clr	R0
    4$:
    	Call	ChOs
    	SOB	R1, 4$
    SkipFill:



    Цитата Сообщение от Jarik65535 Посмотреть сообщение
    Может кто знает, что приходит на вход драйвера в RT-11?
    Код:
    	Mov	HXCQE,  R4		; R4 -> Queue element
    	Mov	(R4)+,  R2		; R2 = Block number
    	MovB	(R4)+,  R1		; R1 = SpFun code
    	MovB	(R4)+,  R3		; R3 = Unit number
    	BiC	#^c7,   R3		; Force it to be 0..7
    
    	Tst	R1
    	BNE	SPFUN			; Is it SpFun call?
    
    	Mov	(R4)+,	R5		; R5 = buf addr
    	Mov	(R4),	R1		; R1 = word count
    
    	Tst	R1
    	BEq	DONE			; R1 = 0 - Nothing to do
    	BPl	HXREAD			;    > 0 - Read
    					;    < 0 - Write
    	Call	HX.Write		; Make Write to HX
    	Br	CHECK			; OK?
    
    HXREAD:					; Make Read from HX
    	Call	HX.Read
    CHECK:					; Error?
    	BCC	DONE			;   No - OK
    					;   Else  - abort
    HXINT:
    HXERR:
    	Mov	HXCQE,	R4		;
    	BiS	#HDERR$, @-(R4)		; Set ERROR bit in CSW.

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

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

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

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

Похожие темы

  1. Контроллер дисковода
    от andrew76 в разделе Внешние накопители
    Ответов: 55
    Последнее: 12.04.2024, 16:33
  2. Контроллер дисковода +3 DOS
    от Tim в разделе Внешние накопители
    Ответов: 8
    Последнее: 17.04.2012, 16:32
  3. [Украина]Продам контроллер дисковода УКНЦ,аукцион.
    от Mad Killer/PG в разделе Барахолка (архив)
    Ответов: 5
    Последнее: 25.12.2011, 00:09
  4. Куплю контроллер дисковода
    от djvini в разделе Барахолка (архив)
    Ответов: 10
    Последнее: 21.04.2011, 01:19
  5. Куплю контроллер дисковода для УКНЦ
    от tnt23 в разделе Барахолка (архив)
    Ответов: 2
    Последнее: 27.02.2009, 08:51

Ваши права

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