Важная информация

User Tag List

Страница 3 из 51 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 501

Тема: Тема для всяких глупых вопросов

  1. #21

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,996
    Спасибо Благодарностей отдано 
    1,092
    Спасибо Благодарностей получено 
    1,190
    Поблагодарили
    925 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    Так может разрабы увидят, и оставят маленький всем нужный битик в положении использованитя переключений
    Тогда надо хотя бы перечислить, в каких эмуляторах это проверялось. Как я уже сказал, Хрессу так не делает. В Анриле не проверял. Другими не пользуюсь за ненадобностью.
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  2. #22

    Регистрация
    31.12.2017
    Адрес
    г. Реж
    Сообщений
    156
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black Cat / Era CG Посмотреть сообщение
    Тогда надо хотя бы перечислить, в каких эмуляторах это проверялось
    Eone 1.8
    Fuse 1.1.1
    EmuZwin 2.8(хотя он 2.7)
    Хрессу не нашёл годного

  3. #23

    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,996
    Спасибо Благодарностей отдано 
    1,092
    Спасибо Благодарностей получено 
    1,190
    Поблагодарили
    925 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    Хрессу не нашёл годного
    А его просто сложно собрать в кучку.
    Авторы перечисленных эмуляторов ниче не увидят, так что увы
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  4. #24

    Регистрация
    31.12.2017
    Адрес
    г. Реж
    Сообщений
    156
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Просто вот код

    Скрытый текст

    Код:
    	org	32768
    	di
    
    	ld	a,%00010111
    	call	SET_PAGE_MODE_A
    	
    	
    	
    
    	call	INIT_TABLE
    
    	;--------
    	ld	ix,LINE_TABLE
    	ld	b,24
    fs	push	bc
    	call	PRINT_32_SPRITE
    	ld	de,lt_size
    	add	ix,de
    	pop	bc
    	djnz	fs
    	;--------
    
    	
    	
    
    strt
    
    col	ld	bc,384
    right	push	bc
    	
    	call	SWAP_SCREEN
    	call	SCROLL2
    	
    	ld	ix,LINE_TABLE
    	ld	b,24
    nxt_ln	push	bc
    	call	PRINT_NEXT_SPRITE
    	pop	bc
    	ld	de,lt_size
    	add	ix,de
    	djnz	nxt_ln
    	call	DRAW
    	
    
    	pop	bc
    	dec	bc
    	ld	a,b
    	or	c
    	jr	nz,right
    	call	INIT_TABLE
    	ld	hl,416
    	ld	(col+1),hl
    	jr	strt
    
    
    
    mar_y	defb	143
    old_y	defb	143
    mar_vel	defw	#1e00
    vel_dn	defb	#0f
    
    ;----------------------------
    update
    	ld	hl,(mar_vel)
    	ld	de,#c0
    	and	a
    	sbc	hl,de
    	ld	a,h
    	or	l
    	jr	nz,upd1
    	ld	hl,#1e00
    upd1	ld	(mar_vel),hl
    
    
    	ld	a,(mar_vel+1)
    	ld	b,a
    	ld	a,(vel_dn)
    	ld	d,a
    	ld	a,(mar_y)
    	ld	(old_y),a
    	add	a,d
    	sub	b
    	ld	(mar_y),a
    	ret
    	
    
    ;---------------------------------
    ;Первая инициализация таблицы: экранныe адресa, адреса начала строк уровня
    INIT_TABLE
    	ld	ix,LINE_TABLE
    	ld	b,0
    nxt_line
    	push	bc
    	ld	de,LEVEL
    	call	ADDR_AFTER255
    	
    	ld	(IX+line_ptr),e
    	ld	(IX+line_ptr+1),d
    
    	call	NEXT_LINE_PTR
    	pop	bc
    
    	call	SCR_ADDR
    	ld	(IX+print_addr),l
    	ld	(IX+print_addr+1),h
    	ld	(IX+attr_addr),e
    	ld	(IX+attr_addr+1),d
    
    	ld	de,lt_size
    	add	ix,de
    	inc	b
    	ld	a,24
    	cp	b
    	jr	nz,nxt_line
    	ret
    
    ;---------------------------------
    ;Печать спрайта из ленты
    PRINT_NEXT_SPRITE
    	ld	l,(IX+ribbon_ptr)
    	ld	h,(IX+ribbon_ptr+1)
    nxt_rib
    	ld	a,(hl)			;номер спрайта
    	cp	255			;конец ленты?
    	jr	nz,no_endrib
    					;конец
    	dec	(IX+ribbon_cnt)
    	call	z,NEXT_LINE_PTR		;счётчик обнулился, следующая лента
    	ld	l,(IX+ribbon_start)
    	ld	h,(IX+ribbon_start+1)
    	ld	(IX+ribbon_ptr),l
    	ld	(IX+ribbon_ptr+1),h
    	jr	nxt_rib
    no_endrib
    	;в A номер спрайта
    	inc	hl
    	ld	b,(hl)
    	ld	l,a
    	ld	h,0
    	push	hl
    	;ld	de,spr_attribs
    	;add	hl,de
    	;ld	a,(hl)
    	ld	l,(IX+attr_addr)
    	ld	h,(IX+attr_addr+1)
    S_AA	set	7,h
    	ld	(hl),b
    	pop	hl
    	
    	add	hl,hl	
    	add	hl,hl
    	add	hl,hl			;x8
    	ld	de,sprites
    	add	hl,de			;адрес спрайта
    
    	ld	e,(IX+print_addr)
    	ld	d,(IX+print_addr+1)
    S_PA	set	7,d
    	ld	b,8
    nxt_b	ld	a,(hl)
    	ld	(de),a
    	inc	hl
    	inc	d
    	djnz	nxt_b
    
    	ld	l,(IX+ribbon_ptr)
    	ld	h,(IX+ribbon_ptr+1)
    	inc	hl
    	inc	hl
    	ld	(IX+ribbon_ptr),l
    	ld	(IX+ribbon_ptr+1),h
    
    	ret
    
    ;---------------------------------
    ;Печать 32 спрайта из ленты c первого знакоместа
    PRINT_32_SPRITE
    	ld	l,(IX+ribbon_ptr)
    	ld	h,(IX+ribbon_ptr+1)
    	ld	d,(IX+print_addr+1)
    	set	7,d
    	ld	a,(IX+print_addr)
    	and	224
    	ld	e,a
    
    	ld	b,32
    P32S1	push	bc
    
    P32S2	ld	a,(hl)			;номер спрайта
    	cp	255			;конец ленты?
    	jr	nz,P32S3
    	;------
    	push	de			;экранный адрес
    	dec	(IX+ribbon_cnt)
    	call	z,NEXT_LINE_PTR		;счётчик обнулился, следующая лента
    	ld	l,(IX+ribbon_start)	;возьмём начало текущей ленты
    	ld	h,(IX+ribbon_start+1)
    	pop	de
    	;------
    	jr	P32S2			
    P32S3
    	;в A номер спрайта
    	inc	hl
    	ld	b,(hl)			;атрибут спрайта
    	push	hl			;ribbon_ptr
    	
    	ld	l,a
    	ld	h,0
    
    	push	hl			;номер спрайта
    	;push	de			;экранный адрес
    
    	ld	a,e			
    	and	31
    	ld	c,a			;номер знакоместа
    	;ld	de,spr_attribs
    	;add	hl,de
    	;ld	b,(hl)			;атрибут спрайта
    	ld	h,(IX+attr_addr+1)
    	set	7,h			;переключимся на 7 банку
    	ld	a,(IX+attr_addr)
    	and	224
    	or	c			;смешение адреса атрибута по х
    	ld	l,a
    	ld	(hl),b			;атрибут на экран
    
    	;pop	de			;экранный адрес
    	pop	hl			;номер спрайта
    	
    	add	hl,hl	
    	add	hl,hl
    	add	hl,hl			;x8
    	push	de			;экранный адрес
    	ld	de,SPRITES
    	add	hl,de			;адрес спрайта
    	pop	de			;экранный адрес
    	
    	push	de			;экранный адрес
    	ld	b,8
    P32S4	ld	a,(hl)
    	ld	(de),a
    	inc	hl
    	inc	d
    	djnz	P32S4
    
    	pop	de			;экранный адрес
    	inc	de
    
    	pop	hl			;ribbon_ptr
    	inc	hl
    	pop	bc
    	djnz	P32S1
    
    	ld	(IX+ribbon_ptr),l
    	ld	(IX+ribbon_ptr+1),h
    	ret
    
    ;---------------------------------
    ;Заполнение данных ленты из указателя линии уровня и его сдвиг
    NEXT_LINE_PTR
    	ld	l,(IX+line_ptr)
    	ld	h,(IX+line_ptr+1)
    
    	ld	b,(hl)
    
    	
    
    	ld	de,RIBBONS
    	call	ADDR_AFTER255
    
    	ld	(IX+ribbon_ptr),e
    	ld	(IX+ribbon_ptr+1),d
    	ld	(IX+ribbon_start),e
    	ld	(IX+ribbon_start+1),d
    	inc	hl
    	ld	a,(hl)
    	ld	(IX+ribbon_cnt),a
    	inc	hl
    	ld	(IX+line_ptr),l
    	ld	(IX+line_ptr+1),h
    	ret
    ;---------------------------------
    ;адрес после разделителя 255 по номеру b
    ADDR_AFTER255
    	
    	xor	a
    	cp	b
    	ret	z
    nxt_de	ld	a,(de)
    	inc	de
    	cp	255
    	jr	nz,nxt_de
    	djnz	nxt_de
    	ret
    
    ;---------------------------------
    ;сдвиг экрана
    SCROLL
    	ld	hl,(S_SRC)
    	ld	de,(S_DST)
    	ld	bc,6911
    	ldir
    	ret
    
    ;---------------------------------
    ;сдвиг экрана2
    SCROLL2
    S_SRC	ld	hl,#4001	;10
    	ld	(S_SRC1+1),hl	;16
    S_DST	ld	hl,#C000	;10
    	ld	de,16		;10
    	add	hl,de		;11
    	ld	(S_DST1+1),hl	;16
    	ld	(SAVE_SP+1),sp	;20
    	ld	b,216		;7	= 100
    
    S_SRC1	LD	SP,0		;10
    	POP	HL		;10
    	POP	DE		;10
    	POP	AF		;10
    	POP	IX		;14
    	POP	IY		;14
    	EXX			;4
    	POP	HL		;10
    	POP	DE		;10
    	POP	BC		;10
    	LD	(S_SRC2+1),SP	;20	= 122
                                            
    S_DST1	LD	SP,0		;10
    	PUSH	BC		;11
    	PUSH	DE		;11
    	PUSH	HL		;11	
    	EXX			;4
    	PUSH	IY		;15
    	PUSH	IX		;15
    	PUSH	AF		;11	
    	PUSH	DE		;11
    	PUSH	HL		;11
    	
    	ld	hl,32		;10
    	add	hl,sp		;11
    	LD	(S_DST2+1),hl	;16	= 147
    
    S_SRC2	LD	SP,0		;10
    	POP	HL		;10
    	POP	DE		;10
    	POP	AF		;10
    	POP	IX		;14
    	POP	IY		;14
    	EXX			;4
    	POP	HL		;10
    	POP	DE		;10
    	POP	BC		;10
    	LD	(S_SRC1+1),SP	;20	= 122
                                            
    S_DST2	LD	SP,0		;10
    	PUSH	BC		;11
    	PUSH	DE		;11
    	PUSH	HL		;11	
    	EXX			;4
    	PUSH	IY		;15
    	PUSH	IX		;15
    	PUSH	AF		;11	
    	PUSH	DE		;11
    	PUSH	HL		;11
    	
    	ld	hl,32		;10
    	add	hl,sp		;11
    	LD	(S_DST1+1),hl	;16	= 147
    
    	djnz	S_SRC1		;13	551 / 32 = 17.2
    				
    
    SAVE_SP	ld	sp,0		;10
    	;~119126 тактов (ldir ~ 145152 тактов - дольше на 21,8%)
    	ret
    	
    ;---------------------------------
    SCR_ADDR
    	;адрес 31ого знакоместа линии	
    	ld	a,b
    	and	%00011000
    	or	%01000000	;+16384
    	ld	h,a
    	ld	a,b
    	rrca
    	rrca
    	rrca
    	ld	d,a		;для расчёта атрибутов
    	or	%00011111	;+31
    	ld	l,a
    
    	;адрес атрибутов этого знакоместа
    	ld	e,l		;уже частично посчитано
    	ld	a,d
    	and	%00000011
    	or	%01011000	;+22528
    	ld	d,a
    
    	ret
    
    ;---------------------------------
    ;Бинд страницы B
    BIND_PAGE_B
    	DI
    	LD	B,A
    	LD      A,(#5B5C)
    	AND	248
    	OR	B
    	LD	(#5B5C),A
    	LD	BC,#7FFD
            OUT	(C),A
    	;EI
            RET
    
    ;--------------------------
    ;Переключение экранов
    SWAP_SCREEN
    	;DI
    	LD      A,(#5B5C)
    	xor	8
    	LD	(#5B5C),A
    	LD	BC,#7FFD
            OUT	(C),A
    	;EI
    
    	ld	a,(S_SRC+2)
    	xor	128
    	ld	(S_SRC+2),a
    	ld	a,(S_DST+2)
    	xor	128
    	ld	(S_DST+2),a
    
    	ld	a,(S_PA+1)
    	xor	8		;SET 6,D <-> SET 7,D
    	ld	(S_PA+1),a
    	ld	a,(S_AA+1)
    	xor	8		;SET 6,H <-> SET 7,H
    	ld	(S_AA+1),a
    
    	ld	a,(A_P1+1)
    	xor	8		;SET 6,H <-> SET 7,H
    	ld	(A_P1+1),a
    
    	
    
            RET
    
    ;--------------------------
    ;Переключение экранов
    SET_PAGE_MODE_A
    	;DI
    	LD	(#5B5C),A
    	LD	BC,#7FFD
    	OUT	(C),A
    	;EI
    	RET
    ;--------------------------
    DOWN	INC	H
    	LD	A,H
    	AND	#07
    	RET	NZ
    	LD	A,L
    	ADD	A,#20
    	LD	L,A
    	RET	C
    	LD	A,H
    	SUB	#08
    	LD	H,A
    	RET
    
    ;---------------------------
    ADR_PIX
    	LD	A,E	;E-Y	
    	AND	A
    	RRA
    	SCF
    	RRA
    	AND	A
    	RRA
    	XOR	E
    	AND	#F8
    	XOR	E
    	OR	#40
    	LD	H,A
    A_P1	set	7,h
    	LD	A,D
    	RLCA
    	RLCA
    	RLCA
    	XOR	E
    	AND	#C7
    	XOR	E
    	RLCA
    	RLCA
    	LD	L,A
    	RET
    ;----------------------------
    DRAW
    	call	update
    
    	ld	a,(old_y)
    	ld	e,a
    	ld	d,32
    	call	ADR_PIX
    	ld	de,FON_SRC
    	call	DRAW_SRC
    
    
    	ld	a,(mar_y)
    	ld	e,a
    	ld	d,40
    	call	ADR_PIX
    	call	COPY_FON
    
    	ld	de,MARIO
    	call	DRAW_SRC
    
    
    	ret
    
    
    ;----------------------------
    DRAW_SRC
    	ld	b,32
    DS1	ld	a,(de)
    	ld	(hl),a
    	inc	hl
    	inc	de
    	ld	a,(de)
    	ld	(hl),a
    	dec	hl
    	inc	de
    	call	DOWN
    	djnz	DS1
    	ret
    ;----------------------------
    COPY_FON
    	push	hl
    	ld	de,FON_SRC
    	ld	b,32
    CF1	ld	a,(hl)
    	ld	(de),a
    	inc	hl
    	inc	de
    	ld	a,(hl)
    	ld	(de),a
    	dec	hl
    	inc	de
    	call	DOWN
    	djnz	CF1
    	pop	hl
    	ret		
    
    
    LINE_TABLE	DEFS	288,0
    
    LINE_ptr	equ	0	;2 - указывает на текущую свёрнутую ленту в линии уровня
    ribbon_ptr	equ	2	;2 - адрес текущего номера спрайта в ленте
    ribbon_start	equ	4	;2 - начальный адрес текущей ленты
    print_addr	equ	6	;2 - адрес знакоместа
    attr_addr	equ	8	;2 - адрес атрибутов
    ribbon_cnt	equ	10	;1 - счётчик количества повторяющихся лент
    
    lt_size		equ	11	;количество байт в данных линии
    
    
    LEVEL
    	DEFB	11,19,8,1,11,17,8,2,11,29,8,1,11,16,8,2,11,29,8,1,11,16,8,2,11,29,8,1,11,7,8,3,11,6,8,2,11,25,255
    	DEFB	11,18,9,1,12,1,10,1,11,15,9,1,12,2,10,1,11,27,9,1,12,1,10,1,11,14,9,1,12,2,10,1,11,27,9,1,12,1,10,1,11,14,9,1,12,2,10,1,11,27,9,1,12,1,10,1,11,5,9,1,12,3,10,1,11,4,9,1,12,2,10,1,11,24,255
    	DEFB	11,9,8,1,11,8,13,1,15,1,14,1,11,7,8,3,11,5,13,1,15,2,14,1,11,17,8,1,11,9,13,1,15,1,14,1,11,6,8,3,11,5,13,1,15,2,14,1,11,17,8,1,11,9,13,1,15,1,14,1,11,6,8,3,11,5,13,1,15,2,14,1,11,17,8,1,11,9,13,1,15,1,14,1,11,5,13,1,15,3,14,1,11,4,13,1,15,2,14,1,11,13,29,1,31,1,11,9,255
    	DEFB	11,8,9,1,12,1,10,1,11,16,9,1,12,3,10,1,11,24,9,1,12,1,10,1,11,16,9,1,12,3,10,1,11,24,9,1,12,1,10,1,11,16,9,1,12,3,10,1,11,24,9,1,12,1,10,1,11,43,30,1,11,9,255
    	DEFB	11,8,13,1,15,1,14,1,11,16,13,1,15,3,14,1,11,24,13,1,15,1,14,1,11,16,13,1,15,3,14,1,11,24,13,1,15,1,14,1,11,16,13,1,15,3,14,1,11,24,13,1,15,1,14,1,11,43,32,1,11,9,255
    	DEFB	11,198,32,1,11,9,255
    	DEFB	11,22,3,1,11,57,2,8,11,3,2,3,3,1,11,14,3,1,11,11,2,3,11,4,2,1,3,2,2,1,11,56,27,2,11,8,32,1,11,9,255
    	DEFB	11,22,4,1,11,57,2,8,11,3,2,3,4,1,11,14,4,1,11,11,2,3,11,4,2,1,4,2,2,1,11,56,28,2,11,8,32,1,11,9,255
    	DEFB	11,187,27,3,11,8,32,1,11,9,255
    	DEFB	11,187,28,3,11,8,32,1,11,9,255
    	DEFB	11,186,27,4,11,8,32,1,11,9,255
    	DEFB	11,186,28,4,11,8,32,1,11,9,255
    	DEFB	11,185,27,5,11,8,32,1,11,4,36,3,11,2,255
    	DEFB	11,185,28,5,11,8,32,1,11,4,2,3,11,2,255
    	DEFB	11,16,3,1,11,3,2,1,3,1,2,1,3,1,2,1,11,21,5,1,11,9,5,1,11,18,2,1,3,1,2,1,11,14,2,1,11,5,2,2,11,4,3,1,11,2,3,1,11,2,3,1,11,5,2,1,11,10,2,2,11,6,27,1,11,2,27,1,11,10,27,2,11,2,27,1,11,12,2,2,3,1,2,1,11,12,27,6,11,8,32,1,11,4,33,1,2,1,34,1,11,2,255
    	DEFB	11,16,4,1,11,3,2,1,4,1,2,1,4,1,2,1,11,21,6,1,11,9,6,1,11,18,2,1,4,1,2,1,11,14,2,1,11,5,2,2,11,4,4,1,11,2,4,1,11,2,4,1,11,5,2,1,11,10,2,2,11,6,28,1,11,2,28,1,11,10,28,2,11,2,28,1,11,12,2,2,4,1,2,1,11,12,28,6,11,8,32,1,11,4,33,1,2,1,34,1,11,2,255
    	DEFB	11,38,5,1,11,6,7,1,11,9,7,1,11,77,27,2,11,2,27,2,11,8,27,3,11,2,27,2,11,26,27,7,11,8,32,1,11,3,36,1,2,3,36,1,11,1,255
    	DEFB	11,2,20,1,11,35,6,1,11,6,7,1,11,2,20,1,11,6,7,1,11,39,20,1,11,37,28,2,11,2,28,2,11,4,20,1,11,3,28,3,11,2,28,2,11,26,28,7,11,4,20,1,11,3,32,1,11,3,2,5,11,1,255
    	DEFB	11,1,21,1,26,1,23,1,11,24,5,1,11,8,7,1,11,6,7,1,11,1,21,1,26,1,23,1,11,5,7,1,11,38,21,1,26,1,23,1,11,35,27,3,11,2,27,3,11,2,21,1,26,1,23,1,11,1,27,4,11,2,27,3,11,5,5,1,11,14,5,1,11,1,27,8,11,3,21,1,26,1,23,1,11,2,32,1,11,3,2,2,35,1,2,2,11,1,255
    	DEFB	11,1,22,1,18,1,24,1,11,13,20,1,11,10,6,1,11,8,7,1,11,6,7,1,11,1,22,1,18,1,24,1,11,5,7,1,11,6,20,1,11,31,22,1,18,1,24,1,11,13,20,1,11,21,28,3,11,2,28,3,11,2,22,1,18,1,24,1,11,1,28,4,11,2,28,3,11,3,20,1,11,1,6,1,11,14,6,1,11,1,28,8,11,3,22,1,18,1,24,1,11,2,32,1,11,3,2,2,35,1,2,2,11,1,255
    	DEFB	21,1,26,1,18,1,25,1,23,1,11,7,16,3,11,1,21,1,26,1,23,1,11,5,16,1,11,3,7,1,11,8,7,1,11,2,16,1,11,3,7,1,21,1,26,1,18,1,25,1,23,1,11,4,7,1,11,1,16,3,11,1,21,1,26,1,23,1,11,5,16,1,11,17,16,1,11,5,21,1,26,1,18,1,25,1,23,1,11,7,16,3,11,1,21,1,26,1,23,1,11,5,16,1,11,13,27,4,16,2,27,4,21,1,26,1,18,1,25,1,27,5,11,2,27,4,11,1,21,1,26,1,23,1,7,1,11,3,16,1,11,10,7,1,27,9,11,2,21,1,26,1,18,1,25,1,23,1,11,1,27,1,11,3,2,2,35,1,2,2,11,1,255
    	DEFB	22,1,18,3,24,1,11,6,17,1,18,3,19,1,22,1,18,1,24,1,11,4,17,1,18,1,19,1,11,2,7,1,11,8,7,1,11,1,17,1,18,1,19,1,11,2,7,1,22,1,18,3,24,1,11,4,7,1,17,1,18,3,19,1,22,1,18,1,24,1,11,4,17,1,18,1,19,1,11,15,17,1,18,1,19,1,11,4,22,1,18,3,24,1,11,6,17,1,18,3,19,1,22,1,18,1,24,1,11,4,17,1,18,1,19,1,11,12,28,4,18,2,28,4,22,1,18,3,28,5,11,2,28,4,19,1,22,1,18,1,24,1,7,1,11,2,17,1,18,1,19,1,11,9,7,1,28,9,11,2,22,1,18,3,24,1,11,1,28,1,11,3,2,2,35,1,2,2,19,1,255
    	DEFB	0,69,11,2,0,15,11,3,0,64,11,2,0,53,255
    	DEFB	1,69,11,2,1,15,11,3,1,64,11,2,1,53,255
    
    
    RIBBONS
    	DEFB	0,16,1,16,255
    	DEFB	16,16,17,16,255
    	DEFB	30,16,30,16,255
    	DEFB	9,48,10,48,255
    	DEFB	25,48,26,48,255
    	DEFB	6,38,7,38,0,38,8,38,255
    	DEFB	22,38,23,38,0,38,24,38,255
    	DEFB	27,46,28,38,0,38,29,46,255
    	DEFB	2,47,3,47,255
    	DEFB	0,40,4,47,255
    	DEFB	5,47,0,40,255
    	DEFB	0,40,0,40,255
    	DEFB	0,56,0,56,255
    	DEFB	0,40,18,47,255
    	DEFB	21,47,0,40,255
    	DEFB	19,47,20,47,255
    	DEFB	2,44,3,44,255
    	DEFB	0,47,4,44,255
    	DEFB	0,32,0,32,255
    	DEFB	5,44,0,47,255
    	DEFB	11,44,12,44,255
    	DEFB	0,47,13,44,255
    	DEFB	13,44,0,32,255
    	DEFB	14,44,0,47,255
    	DEFB	0,32,14,36,255
    	DEFB	15,32,0,32,255
    	DEFB	0,32,15,32,255
    	DEFB	31,40,32,40,255
    	DEFB	33,40,34,40,255
    	DEFB	0,40,14,61,255
    	DEFB	14,61,0,40,255
    	DEFB	37,60,0,40,255
    	DEFB	38,42,0,40,255
    	DEFB	30,16,0,0,255
    	DEFB	0,7,30,16,255
    	DEFB	0,7,0,7,255
    	DEFB	35,42,36,42,255
    
    
    
    
    SPRITES
    	DEFB	0,0,0,0,0,0,0,0
    	DEFB	64,65,65,65,81,94,65,65
    	DEFB	0,3,7,31,31,31,57,119
    	DEFB	0,192,224,224,244,190,222,254
    	DEFB	0,7,15,31,31,127,127,63
    	DEFB	0,16,176,240,250,254,254,252
    	DEFB	0,127,3,115,115,115,115,115
    	DEFB	0,255,240,246,246,246,246,246
    	DEFB	0,254,0,86,46,86,46,86
    	DEFB	85,128,32,135,15,142,14,134
    	DEFB	86,1,5,193,225,113,113,241
    	DEFB	0,0,0,0,0,7,63,255
    	DEFB	0,0,0,0,0,224,252,255
    	DEFB	1,3,7,15,31,63,127,255
    	DEFB	128,192,224,240,248,252,254,255
    	DEFB	2,7,7,7,55,50,48,48
    	DEFB	0,0,192,48,15,1,1,126
    	DEFB	65,65,129,129,1,1,3,126
    	DEFB	27,13,6,7,0,0,0,0
    	DEFB	255,191,28,192,243,126,28,0
    	DEFB	191,127,61,131,199,255,60,0
    	DEFB	248,252,254,254,248,96,0,0
    	DEFB	115,115,115,115,115,115,0,0
    	DEFB	246,246,246,246,246,246,0,0
    	DEFB	46,86,46,86,46,86,0,0
    	DEFB	1,129,0,129,1,160,0,255
    	DEFB	113,65,193,1,65,197,1,255
    	DEFB	31,23,31,23,31,23,31,23
    	DEFB	251,251,251,251,251,251,251,251
    	DEFB	184,88,184,88,184,88,184,88
    	DEFB	255,2,2,2,255,32,32,32
    	DEFB	128,64,32,16,13,10,5,10
    	DEFB	1,3,7,15,95,175,95,175
    	DEFB	5,10,5,10,31,63,127,255
    	DEFB	95,175,95,175,247,251,253,254
    	DEFB	248,248,248,248,0,216,216,216
    	DEFB	29,29,29,29,0,31,31,31
    	DEFB	0,124,214,146,186,238,254,56
    	DEFB	3,3,3,3,3,3,3,3
    MARIO
    	DEFB 3,240
    	DEFB 15,208
    	DEFB 31,208
    	DEFB 31,254
    	DEFB 28,144
    	DEFB 38,204
    	DEFB 38,2
    	DEFB 96,34
    	DEFB 96,252
    	DEFB 112,124
    	DEFB 24,0
    	DEFB 8,32
    	DEFB 11,208
    	DEFB 27,216
    	DEFB 59,220
    	DEFB 123,222
    	DEFB 115,206
    	DEFB 243,207
    	DEFB 240,15
    	DEFB 244,47
    	DEFB 144,9
    	DEFB 144,9
    	DEFB 80,10
    	DEFB 32,4
    	DEFB 32,4
    	DEFB 65,130
    	DEFB 66,66
    	DEFB 68,34
    	DEFB 68,34
    	DEFB 60,60
    	DEFB 252,63
    	DEFB 252,63
    FON_SRC
    	defs	64,0
    
    
    print_bc
    	CALL	11563
    	CALL	11747
    	jr	$
    	;page	6
    	;defb	0
    [свернуть]

    Внизу можно раскомментироватть
    page 1
    defb 0
    и всё, картина меняется

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

    Цитата Сообщение от shurik-ua Посмотреть сообщение
    можешь попробовать создать нужный тебе SNA файл - первые 27 + 49152 байта как из 48-го снапшота - затем добавляешь 2 байта PC, 1 байт Состояние порта #7FFD и 1 байт Выбор ПЗУ TR-DOS (0 - неактивно, 1 - активно)
    итого должен получиться файл по размеру обычного SNA-48 плюс 4 байта.
    Я могу создать сна, но если он 48 НО использует банки, то аут

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

    Цитата Сообщение от shurik-ua Посмотреть сообщение
    затем добавляешь 2 байта PC, 1 байт Состояние порта #7FFD и 1 байт Выбор ПЗУ TR-DOS (0 - неактивно, 1 - активно)
    итого должен получиться файл по размеру обычного SNA-48 плюс 4 байта.
    после этого должен получиться как минимум 128(всё невклёчёные банка, а нет(

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

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    2 байта PC
    они и в хаголовке неплоъхо себя чувствуют(что 128, что 48)

    Скрытый текст

    Код:
    void ZX_SNA_Saver::FillHeader(ByteVector & mas, unsigned int start)
    {
    	//Заполним заголовок sna(27 байт)
    	mas.push_back(63);		//регистр I
    
        mas.push_back(0);		//HL'
        mas.push_back(0);
        mas.push_back(0);		//DE'
        mas.push_back(0);
        mas.push_back(32);		//BC'
        mas.push_back(23);
        mas.push_back(68);		//AF'
        mas.push_back(0);
    
        mas.push_back(168);		//HL
        mas.push_back(16);
        mas.push_back(185);		//DE
        mas.push_back(92);
        mas.push_back(0);		//BC
        mas.push_back(0);
        mas.push_back(58);		//IY
        mas.push_back(92);
        mas.push_back(0);		//IX
        mas.push_back(0);
    
        mas.push_back(6);		//Флаги прерываний
        mas.push_back(0);		//Регистр регенерации динамической памяти R
    
        mas.push_back(116);		//AF
        mas.push_back(0);
        mas.push_back((start - 2) % 256);		//SP
        mas.push_back((start - 2) / 256);
    
        mas.push_back(1);		//Режим прерываний
        mas.push_back(7);		//Цвет бордюра
    }
    [свернуть]


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

    Пожоду я показывал уже..

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

    Упс.. а тут нет пс, а где в 48 он?

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

    А пк опять же только в 128 режиме

    Скрытый текст

    Код:
      //Если 128k
        if (is128)
        {
        	sna.push_back(start % 256);	//Регистровая пара PC
        	sna.push_back(start / 256);
            sna.push_back(16);			//Состояние порта #7FFD
            sna.push_back(0);			//ПЗУ TR-DOS (0 - неактивно, 1 - активно)
    
            // Банки 1 3 4 6 7
            this->Addpage(compiler, sna, 1);
            this->Addpage(compiler, sna, 3);
            this->Addpage(compiler, sna, 4);
            this->Addpage(compiler, sna, 6);
            this->Addpage(compiler, sna, 7);
        }
    [свернуть]


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

    Весь этот разговор изначальную проблему не решает, в сна 48 эмуляторы сразу отключают юз страниц

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

    а не надо так) не надо такими быть

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

    Поменяйте 1 битик

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

    Где в SNA-48 хранится PC

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

    Где в SNA-48 хранится PC
    Цитата Сообщение от Dwa83 Посмотреть сообщение
    в сна 48 эмуляторы сразу отключают юз страниц
    Знавчит стырили с оджного источника))

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

    За-Ба-СтоВка(бунт) ну там Покожите, где я дибил, либо, но увы перекомпилите эмули, ыыыыы)))
    Последний раз редактировалось Dwa83; 24.08.2020 в 18:20.

  5. #25

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,307
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    203
    Спасибо Благодарностей получено 
    1,469
    Поблагодарили
    957 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    Где в SNA-48 хранится PC

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

    Где в SNA-48 хранится PC
    ты мудак ?
    читай пост #11

  6. #26

    Регистрация
    31.12.2017
    Адрес
    г. Реж
    Сообщений
    156
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А интересно, тут есть создатели Эмулей?

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

    Цитата Сообщение от goodboy Посмотреть сообщение
    ты мудак ?
    читай пост #11
    И что там мне поможет? ты идиот?

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

    Цитата Сообщение от goodboy Посмотреть сообщение
    точнее эмулируют именно 48ую модель.
    Зачем?

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

    Зачем БИТ включать?

  7. #27

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,307
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    203
    Спасибо Благодарностей получено 
    1,469
    Поблагодарили
    957 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    SnapShot это именно сохранёнка состояния под эмулем.
    а то что ты пытаешься создать sna допустим под асмом это твои проблемы, а не авторов эмуля.
    .................
    ещё могу подсказать что режим im1 на 128ой машине работает совсем по другому
    и если прерывания разрешены то подсунув 48ой SNA ты скорее всего вызовешь сброс/зависание
    Последний раз редактировалось goodboy; 24.08.2020 в 20:00.

  8. #28

    Регистрация
    31.12.2017
    Адрес
    г. Реж
    Сообщений
    156
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ты читал тему с начала, идиотик?

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

    Ну с поста третьего примерно

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

    Что ты мне посоветуешь с моей проблемой?

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

    В 48 к где хранится инфа о порте

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

    Почему сразу заглушка?

  9. #29

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,307
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    203
    Спасибо Благодарностей получено 
    1,469
    Поблагодарили
    957 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    Что ты мне посоветуешь с моей проблемой?
    убейся об стену или смени среду разработки
    ..............
    правильно говорят что один дурак задаст столько вопросов что сто мудрецов не ответят

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

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    В 48 к где хранится инфа о порте
    смотря какой порт интересует - Одесский или Кейптаунский
    Последний раз редактировалось goodboy; 24.08.2020 в 20:13.

    Этот пользователь поблагодарил goodboy за это полезное сообщение:

    SoftLight(24.08.2020)

  10. #30

    Регистрация
    31.12.2017
    Адрес
    г. Реж
    Сообщений
    156
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    или смени среду разработки
    Я иж меняю как перчатки))))

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

    Я думал ты подскажешь в сложной ситуации, а ты просто никчёмный

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

    Цитата Сообщение от Dwa83 Посмотреть сообщение
    или смени среду разработки
    на какую?

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

    Цитата Сообщение от goodboy Посмотреть сообщение
    о порте
    Цитата Сообщение от goodboy Посмотреть сообщение
    о порте
    Все понимают, ты один как сцыкливая сипа хотешь высказаться

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

    Эй гудбой, где в 48 то что нужно?

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

    Хоть бы байт по делу сказал, ну правда

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

    яж код дал, что мешает проверить. Наверное идиотизм

Страница 3 из 51 ПерваяПервая 1234567 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 42
    Последнее: 05.05.2021, 17:01
  2. Общая тема для моих вопросов (ассемблер и zx spectrum)
    от moronizzz в разделе Для начинающих
    Ответов: 17
    Последнее: 23.08.2016, 18:13
  3. тема для мобильного....
    от rasmer в разделе Музыка
    Ответов: 0
    Последнее: 18.01.2008, 20:25

Метки этой темы

Ваши права

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