User Tag List

Страница 463 из 695 ПерваяПервая ... 459460461462463464465466467 ... ПоследняяПоследняя
Показано с 4,621 по 4,630 из 6942

Тема: Версии игр и софта, найденные на кассетах

  1. #4621

    Регистрация
    29.01.2017
    Адрес
    г. Кривой Рог, Украина
    Сообщений
    334
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    20 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от JeRrS Посмотреть сообщение
    В общем продолжая мучить WELLTRIS выяснилось что в принципе ему можно подсунуть любой компрессионный блок (не более 5242 байт) и он его даже спокойно распакует и покажет, но почему-то тогда он отказывается грузить последний блок.
    У меня всё загружается. При том, что картинка считалась не до конца. Но как я понимаю, вся ценность релиза в картинке.

    https://yadi.sk/d/DZlMiAvG3KbADk

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

    Вот как картинку спасти?

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

  3. #4622

    Регистрация
    02.02.2005
    Адрес
    г. Екатеринбург
    Сообщений
    1,546
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    155
    Поблагодарили
    106 сообщений
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Bambr, Ну, то что вы выложили на Яндекс это собственно я сам вчера вам и выложил в виде WAV'ки. Пошаманив с данными я попытался восстановить блок с картинкой, взяв выпавшие байты с блока от Дупанова, он её прогрузил но она идет киш-мякишом и выглядит это по уродский. Единственное отличие в том, что внизу написано "Челябинск" с номером телефона. Т.е формально я готов проститься с той картинкой и даже вставить оригинал ,но как я уже говорил, подсунув ей другой блок, он отказывается грузить основной (последний).
    Группа в ВК, посвященная кассетным версиям игр для спектрума
    В коллекции:Plazma-128K (YM+TR-DOS), Кворум 128+, Эксперт-006, Квант V3.а, Квант (Didaktik), Компаньон-2 (V2.2), Radon Plus, Урал 8-64К, Byte, Хоббит, Байт, Compact-256, Profi-128K (Kramis V.02), Himac 48K

  4. #4623

    Регистрация
    29.01.2017
    Адрес
    г. Кривой Рог, Украина
    Сообщений
    334
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    20 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от JeRrS Посмотреть сообщение
    Bambr, Единственное отличие в том, что внизу написано "Челябинск" с номером телефона. Т.е формально я готов проститься с той картинкой и даже вставить оригинал ,но как я уже говорил, подсунув ей другой блок, он отказывается грузить основной (последний).
    Не понимаю. Spectaculator 8.0 всё грузится. И в обычном и в фаст режиме, и с родным и с дупановским блоком. Тоесть игра загружается полностью.

  5. #4624

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,395
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от JeRrS Посмотреть сообщение
    Пофиксите релиз, картинка не прогружается, на пленке была вмятина, я вставил блок от Дупанова, т.к начальные данные совпадали до вмятины. Но почему-то появляется картинка не полностью.

    Нет, это не Дупанов. В том блоке внизу виднеется надпись "Челябинск"
    Неплохую защиту навернул там Андрей)

    Теоретически пофиксить этот релиз можно, но практически ради надписи 'Челябинск' и, возможно, номера телефона - какой смысл?
    Для фикса нужно разобраться в работе депакера, а он там навороченный, распаковать оба блока данных, до вмятины и после, дорисовать середину и упаковать обратно.
    В данном случае овчинка выделки не стоит.
    А главный блок прекрасно грузится и игра запускается.

    p.s.: И еще раз выскажусь - долой моно-записи! В данной записи четко видно, как смешаны два канала, причем один с задержкой, из-за чего на единичных фронтах появляются лишние гармоники. То, что читалка это распознала - еще не значит, что так надо делать.

  6. #4625

    Регистрация
    02.02.2005
    Адрес
    г. Екатеринбург
    Сообщений
    1,546
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    155
    Поблагодарили
    106 сообщений
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Хорошо, другой тогда вопрос. Можно ли сделать так, чтобы он грузил блок любой длины? И подсунуть ему хотя бы для проверки блок от Дупанова, чтобы он спокойно его распаковал и отобразил.
    Группа в ВК, посвященная кассетным версиям игр для спектрума
    В коллекции:Plazma-128K (YM+TR-DOS), Кворум 128+, Эксперт-006, Квант V3.а, Квант (Didaktik), Компаньон-2 (V2.2), Radon Plus, Урал 8-64К, Byte, Хоббит, Байт, Compact-256, Profi-128K (Kramis V.02), Himac 48K

  7. #4626

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,395
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Любой нельзя. Он грузит блок длиной не более $147b. Старт $9c40.

  8. #4627

    Регистрация
    29.01.2017
    Адрес
    г. Кривой Рог, Украина
    Сообщений
    334
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    20 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от JeRrS Посмотреть сообщение
    Хорошо, другой тогда вопрос. Можно ли сделать так, чтобы он грузил блок любой длины? И подсунуть ему хотя бы для проверки блок от Дупанова, чтобы он спокойно его распаковал и отобразил.
    Сильно в загрузчике не ковырялся. Но обычно распаковщик в самом блоке с картинкой.
    Тоесть он загружается и запускается. Потом грузится следующий блок.

  9. #4628

    Регистрация
    02.02.2005
    Адрес
    г. Екатеринбург
    Сообщений
    1,546
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    155
    Поблагодарили
    106 сообщений
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Titus, Ну сделал, но грузит почему-то только при FastLoad. В чем может быть косяк?
    Группа в ВК, посвященная кассетным версиям игр для спектрума
    В коллекции:Plazma-128K (YM+TR-DOS), Кворум 128+, Эксперт-006, Квант V3.а, Квант (Didaktik), Компаньон-2 (V2.2), Radon Plus, Урал 8-64К, Byte, Хоббит, Байт, Compact-256, Profi-128K (Kramis V.02), Himac 48K

  10. #4629

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,395
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Уже есть подвижки с восстановлением экрана. Вертикальный полосатый фрагмент в середине экрана - это потерянный кусок.



    Декомпрессор оказался на редкость примитивным, и при этом жутко монстроидальным. Наверное тот, кто писал его, только учился программировать. Если кому интересно, выкладываю краткий дизассемблер, по которому я разбирался с ним.

    Код:
    +1		номер трети (0..2)
    
    +2		число третей (1..3)
    
    +3		bit 0	 0 - ширина строки 1 байт, 1 - ширина строки 32 байта 
    		bit 2 	 0 - обычный режим, 1 - режим fill (заполнения области)
    		bit 3 	 0 - распаковка экрана, 1 - распаковка атрибутов
    
    
    
    
    
    9C40		JR	$9C46
    
    9C42 (begin)	DB	$01, $FF, $FF, $0C	; Сигнатура текущей команды
    
    		
    9C46		CALL	$007C			; RET (Получить на стеке адрес выхода this)
    9C49 (this)	DEC	SP			
    		DEC	SP			
    		EX	(SP),HL			; HL - адрес this
    		INC	SP
    		INC	SP
    		AND	A
    		LD	DE,$0007
    		SBC	HL,DE			
    		PUSH	HL
    		POP	IY			; IY = this - 7 (begin) = $9C42
    		LD	DE,$012A
    		ADD	HL,DE			; HL = this - 7 + $012A = $9D6C
    		
    		LD	A,(IY+$00)		; (IY) -> A (A = $01)
    $9C5E		DEC	A			; 
    		JR	Z,$9C67			; Если A = 1, то --> $9C67
    		
    						( не используется)
    		LD	E,(HL)			; HL = HL + (HL)
    		INC	HL			; 
    		LD	D,(HL)			;
    		ADD	HL,DE			;
    		JR	$9C5E			; --> $9C5E
    		
    $9C67		LD	DE,$4000		; DE = $4000 (адрес начала экрана)
    		INC	HL
    		INC	HL			; HL = HL + 2 = $9D6E
    		LD	A,(IY+$01)		; A = (IY+1) ($FF)
    		INC	A			;
    		JR	NZ,$9C76		; Если A <> $FF, то --> $9C76
    		LD	A,(HL)			; (HL)->(IY+1) (обновить номер трети)
    		LD	(IY+$01),A		;
    $9C76		
    		INC	HL			; HL = HL + 1
    		LD	A,(IY+$02)		; A = (IY+2)
    		INC	A			;
    		JR	NZ,$9C81		; Если А <> $FF, то --> $9C81
    		LD	A,(HL)			; (HL) -> (IY+2) (обновить число третей)
    		LD	(IY+$02),A		; 
    $9C81
    		INC	HL			; HL = HL + 1
    		LD	A,(HL)			; (HL) -> (IY+3) (флаги)
    		LD	(IY+$03),A		; 
    		
    		LD	A,(IY+$01)		; Если (IY+1) >= 3, 		; Скорректировать номер трети 0..2
    		CP	$03			; то (IY+1) = 0
    		JR	C,$9C91			;
    		LD	(IY+$01),$00		; 
    $9C91		
    		LD	A,(IY+$02)		; A = (IY+2)			; Скорректировать число третей 0..3
    		CP	$04			; Если (IY+2) >= 4,
    		JR	C,$9C9C			; то (IY+2) = 1
    		LD	(IY+$02),$01		;
    $9C9C
    		ADD	A,(IY+$01)		; A = A + (IY+1)		; Сложить число третй и номер трети,
    		CP	$04			; Если A >= 4,			; чтобы сумма не привышала 3
    		JR	C,$9CA7			; то (IY+2) = 1
    		LD	(IY+$02),$01		;
    $9CA7
    		LD	A,(IY+$02)		; Если (IY+2) = 0,		; Скорректировать число третей 1..3
    		AND	A			; то (IY+2) = 1
    		JR	NZ,$9CB1		;
    		LD	(IY+$02),$01		;
    $9CB1
    		INC	HL			; HL = HL + 1
    		LD	E,$00			; E = 0
    		LD	A,(IY+$01)		; A = (IY+1)			; (IY+1) - номер трети (0..2)
    		ADD	A,A			;
    		ADD	A,A			;
    		ADD	A,A			;
    		ADD	A,$40			; А = $40 + (A * 8)
    		LD	D,A			; D = A
    		LD	C,A			; C = A
    		
    		LD	B,$01			;				; Число столбцов
    		BIT	0,(IY+$03)		; Если бит 0 (IY+3) = 0,
    		JR	NZ,$9CC8		; то    B = $20,
    		LD	B,$20			; иначе B = $01
    $9CC8
    		PUSH	BC			; Сохранить BC
    		LD	B,(IY+$02)		; B = (IY+2) (цикл на N третей)
    $9CCC
    		PUSH	BC			; Сохранить BC
    		LD	B,$08			; B = 8 (цикл на 8 знакоместв в трети)
    $9CCF
    		PUSH	BC			; Сохранить BC
    		LD	B,$08			; B = 8	(цикл на высоту знакоместа)
    $9CD2
    		PUSH	BC			; Сохранить BC
    		
    						; Выбрать длину цикла - 1 байт или 32 байта (ширина строки)
    		LD	B,$01			; Если бит 0 (IY+3) = 0,
    		BIT	0,(IY+$03)		; то	B = $01,
    		JR	Z,$9CDD			; иначе B = $20
    		LD	B,$20			;
    $9CDD
    		PUSH	DE			; Сохранить DE
    $9CDE
    		PUSH	BC			; Сохранить BC
    		JR	$9D24			; --> $9D24 (распаковка одного байта)
    		
    $9CE1						; Цикл на ширину строки (1 или 32)
    		POP	BC			; Восстановить BC
    		INC	DE			; DE = DE + 1
    		DJNZ	$9CDE			; Цикл --> $9CDE
    		
    						; Цикл на высоту знакоместа
    		POP	DE			; Восстановить DE
    		POP	BC			; Восстановить BC
    		INC	D			; D = D + 1
    		DJNZ	$9CD2			; Цикл --> $9CD2
    		
    		LD	A,D			; Коррекция перехода на знакоместо ниже
    		SUB	$08			;
    		LD	D,A			;
    		LD	A,E			;
    		ADD	A,$20			;
    		LD	E,A			;
    		
    		POP	BC			;
    		DJNZ	$9CCF			; Цикл на число знакоместв в трети
    		
    		LD	A,D			; Коррекция перехода на треть ниже
    		ADD	A,$08			;
    		LD	D,A			;
    		
    		POP	BC			;
    		DJNZ	$9CCC			; Цикл на число третей
    		
    		LD	D,C			; Переход на следующий столбец
    		INC	E			;
    		POP	BC			;
    		DJNZ	$9CC8			; Цикл на число столбцов
    		
    						; Распаковка атрибутов
    		
    		LD	E,$00			;
    		LD	A,$58			;
    		ADD	A,(IY+$01)		; D = (IY+1) + $58
    		LD	D,A			; E = 0
    		LD	B,(IY+$02)		; B = (IY+2)		(BC - длина области)
    		LD	C,E			; C = 0
    		SET	3,(IY+$03)		; бит 3 (IY+3) = 1
    $9D11
    		PUSH	BC
    		JR	$9D24
    		
    $9D14		POP	BC
    		DEC	BC
    		INC	DE
    		LD	A,B
    		OR	C
    		JR	NZ,$9D11
    		LD	(IY+$01),$FF
    		LD	(IY+$02),$FF
    		RET
    
    						; Распаковка одного байта
    						
    $9D24		BIT	2,(IY+$03)		; Если бит 2 (IY+3) = 0, (не режим fill)
    		JR	Z,$9D37			; то --> $9D37
    		
    		EXX				;			
    		DEC	B			; B' = B' - 1
    		LD	A,C			; 
    		EXX				;
    		JR	Z,$9D33			; Если B' = 0, то --> $9D33 
    		LD	(DE),A			; C' -> (DE)
    		JR	$9D4B			; --> $9D4B
    		
    $9D33		RES	2,(IY+$03)		; бит 2 (IY+3) = 0 (сбросить режим fill)
    
    $9D37		LD	A,(HL)			; A = (HL)	
    		INC	HL			; HL = HL + 1
    		AND	A			; Если A <> 0,
    		JR	NZ,$9D4A		; то --> $9D4A (обычный режим)
    		
    						; переход в режим fill
    						
    		LD	A,(HL)			; B' = (HL)			; B' - длина fill-области
    		EXX				;
    		LD	B,A			;
    		EXX				;
    		INC	HL			; HL = HL + 1
    		LD	A,(HL)			; C' = (HL)			; C' - байт для заполнения fill-области
    		EXX				;
    		LD	C,A			;
    		EXX				;
    		INC	HL			; HL = HL + 1
    		SET	2,(IY+$03)		; бит 2 (IY+3) = 1 (установить fill-режим)
    $9D4A
    		LD	(DE),A			; A -> (DE)
    $9D4B
    		BIT	3,(IY+$03)		; Если бит 3 (IY+3) = 1 (распаковка атрибутов)
    		JR	NZ,$9D14		; то --> $9D14,
    		JR	$9CE1			; иначе --> $9CE1
    		
    		
    		
    		
    $01-$FF		- режим обычного копирования
    $00,len,byte	- режим fill, где len - длина, byte - байт для заполнения
    - - - Добавлено - - -

    Восстановил, запаковав ручками выпавший кусок картинки, по алгоритму данного пакера.



    p.s.: Пакер - это нечто) Неэкономный, монстроидальный) Но спишем на ученичество автора, каждый через это проходил.
    Вложения Вложения

  11. #4630

    Регистрация
    29.01.2017
    Адрес
    г. Кривой Рог, Украина
    Сообщений
    334
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    20 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    p.s.: Пакер - это нечто) Неэкономный, монстроидальный) Но спишем на ученичество автора, каждый через это проходил.
    Всё, теперь у нас есть телефон
    Кто поближе, звоните автору

Страница 463 из 695 ПерваяПервая ... 459460461462463464465466467 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Исходники софта
    от Sayman в разделе Софт
    Ответов: 3
    Последнее: 14.08.2009, 18:11
  2. Полезные ссылки вновь найденные:
    от AAA в разделе Разный софт
    Ответов: 3
    Последнее: 23.06.2008, 20:10
  3. моя коллекция софта
    от moroz1999 в разделе Игры
    Ответов: 7
    Последнее: 25.07.2007, 12:21
  4. Перегон софта PC-ZX
    от spleen в разделе Утилиты
    Ответов: 12
    Последнее: 14.05.2007, 17:33
  5. Архив софта от Himik's ZxZ/PoS-WT
    от himik в разделе Софт
    Ответов: 23
    Последнее: 12.01.2007, 06:41

Ваши права

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