Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Unsorted (http://zx-pk.ru/forumdisplay.php?f=13)
-   -   Как отследить LOAD ""... (http://zx-pk.ru/showthread.php?t=6063)

ILoveSpeccy 1st September 2007 21:25

Как отследить LOAD ""...
 
Тема однако...

как можно отследить (через ZX-Bus) состояние спека, когда он ждет сигнала с Tape_IN???
Чтобы например источник сигнала (CD- или MP3-Player) включался автоматически...
Может есть какой-нить порт или что-то другое...

Black_Cat 1st September 2007 22:44

Задай вопрос в "программирование" - мож подскажут идею.

ILoveSpeccy 1st September 2007 22:47

Quote:

Originally Posted by Black_Cat (Post 99802)
Задай вопрос в "программирование" - мож подскажут идею.

Я имею в виду отследить именно железом...

Black_Cat 1st September 2007 22:55

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

DDp 1st September 2007 23:04

Quote:

Originally Posted by ILoveSpeccy (Post 99781)
как можно отследить (через ZX-Bus) состояние спека, когда он ждет сигнала с Tape_IN???
Чтобы например источник сигнала (CD- или MP3-Player) включался автоматически...

Ну, например...
"Пищим" (всегда) пилот-тоном в tape-in (port #fe in), "смотрим" на бордюр (port #fe out), если мигает в такт с пилот-тоном значит...
Минус: не сработает если подзагрузка с нестандартным лоадером (с немигающим бордюром).

Black_Cat 1st September 2007 23:15

Quote:

Originally Posted by DDp (Post 99809)
"Пищим" (всегда) пилот-тоном в tape-in

он как раз спрашивает как плеер узнает, что надо пилот-тон давать, т.е. "ещё не пищим".

DDp 1st September 2007 23:45

Quote:

Originally Posted by Black_Cat (Post 99812)
он как раз спрашивает как плеер узнает, что надо пилот-тон давать, т.е. "ещё не пищим".

Что за плейер с ZX-BUS интерфейсом ?!!! :v2_laugh:


Я так предполагаю - в ZX-BUS воткнута некая железка, которая является последником между плейером и компом. Вот она и "пищит".

Black_Cat 1st September 2007 23:50

Quote:

Originally Posted by DDp (Post 99819)
Я так предполагаю - в ZX-BUS воткнута некая железка, которая является последником между плейером и компом. Вот она и "пищит".

когда она пищит?

KingOfEvil 2nd September 2007 00:30

Ну вы загнули. Если есть ZX-BUS, то можно вместо магнитофона грузить с флеш-карты через ZX-BUS.

Sonic 3rd September 2007 11:15

Именно LOAD"", а точнее запуск процедуры TAPE_LOAD можно отследить по выборке команды из основного ПЗУ по адресу 1366 десятичное. Существующие импортные разработки (DivIDE и пр.) именно так и делают. В более общем случае (нестандартные загрузчики и пр,) - никак.

ram_scan 3rd September 2007 14:18

А нестандартный загрузчик все равно загружается стандартной процедурой. главное "виртуальную ленту" запустить, а там нехай грузится чем хочет.

Sonic 3rd September 2007 14:58

Хм логично. А останавливать как будешь? Или фиг с ней?
Кстати можно еще и сделать автоматическое позиционирование на заданный файл, путем перехвата именно команды LOAD"..." и просмотра указанного имени файла.
Еще надо подумать как быть с дозагружаемыми уровнями. В этом случае надо ленту запускать, останавливать, да еще и позиционировать.

Lethargeek 3rd September 2007 15:08

Quote:

Originally Posted by ram_scan (Post 100047)
А нестандартный загрузчик все равно загружается стандартной процедурой. главное "виртуальную ленту" запустить, а там нехай грузится чем хочет.

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

Quote:

Originally Posted by Sonic (Post 100021)
Именно LOAD"", а точнее запуск процедуры TAPE_LOAD можно отследить по выборке команды из основного ПЗУ по адресу 1366 десятичное. Существующие импортные разработки (DivIDE и пр.) именно так и делают. В более общем случае (нестандартные загрузчики и пр,) - никак.

А как же эмуляторы правильно обеспечивают автостарт/автостоп нестандартных загрузчиков? Имхо явно отлавливать "IN 254" по ZX-BUS, если порт начал опрашиваться подозрительно часто и периодично - врубать мафон, перестал опрашиваться - вырубать.

Перехват LOAD"" фтопку.

Vitron 3rd September 2007 16:03

Я думаю нужен еще более совершенный способ, который будет 100% совместим с любыми программами обращающими по out 254, чтобы небыло ложных срабатываний...(если не ошибаюсь) нужно отлавливать комплексно ловя несколько стандартных подобращений к процедуре еще до ее запуска....

Lethargeek 3rd September 2007 16:39

Quote:

Originally Posted by Vitron (Post 100059)
нужно отлавливать комплексно ловя несколько стандартных подобращений к процедуре еще до ее запуска....

Зачем же такие сложности? Главное - не остановить раньше времени. ;)
Если запоздали на пилоттон следующего блока, ничего страшного, потом дадим его сначала.

Хотя могут быть сильно извратные защиты с замеряемыми паузами - с ними эмуляторы справляются только в режиме "без ускорения и без автостарта/стопа", и то если tzx корректный.

А лучше напишите автору SPIN-а, он походу главный гуру и первопроходец в этой области.

ram_scan 4th September 2007 08:34

Quote:

Originally Posted by Lethargeek (Post 100054)
Не, так нельзя, остановки же могут быть, менюшки промежуточные, дозагрузки...

А как с живого магнитофона делается ? Все вручную. Форматы типа tzx допускают паузы, плюс там как правило дозагрузки идут моноблоком, то есть один файл - гейма целиком. С этим никаких проблем не возникает. А tap файлы - так с ними и в эмуляторах не все шоколадно.

Lethargeek 4th September 2007 08:52

Quote:

Originally Posted by ram_scan (Post 100221)
А как с живого магнитофона делается ? Все вручную. Форматы типа tzx допускают паузы, плюс там как правило дозагрузки идут моноблоком, то есть один файл - гейма целиком. С этим никаких проблем не возникает. А tap файлы - так с ними и в эмуляторах не все шоколадно.

Фигня какая. Навскидку даже и не вспомню, чтобы в каких-то играх с догружаемыми уровнями возникали проблемы с автостартом/стопом, на сколько бы мелких блочков ни был разит один догружаемый уровень (потому что загрузчики уровней как правило не наворачивались, вот для хитрых загрузчиков основного блока или просто целиком загружаемых игрушек изредка приходилось автостоп отключать), вручную - только на начало приходилось перематывать после GAME OVER. А tap-файлы "по определению" наименее проблемные из всех.

ram_scan 5th September 2007 10:21

TAP файлы наименее проблемные только потому что они наиболее стандартные. Если грузить tap файл нестандартной процедурой, но загружающей стандартный формат, то тут как раз в эмуляторах и возникают основные грабли и с автостартом, и с остановкой виртуальной ленты.

Через стандартную точку входа то все на ура эмулируется.


All times are GMT +4. The time now is 15:41.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.