Цитата Сообщение от aGGreSSor Посмотреть сообщение
Во-первых, тест на турбу был сделан для скорпионов ЕМНИП ещё в 98-м. Делалось для синхронизации таймингов в демках адаптированных для скорпа. После приснопамятного разговора KANO с Зоновым на E'97. Многие демки не работали и они были адаптированы, в т.ч. многие проверяют турбу. Во-вторых, пользователь включил турбу во время выполнения программы, что должен делать код? Пользователь СЗБ или что? Проверка производится на старте. Нет турбы, что должен делать код? В-третьих, как уже написал Dexus, не все турбы одинаково полезны. В-четвёртых (и последних) частота не равна производительности. В теории можно ускорить какой-нибудь обсчёт, на практике как это использовать в условиях имеющегося зоопарка никому неизвестно с 98-го по сей день. Поэтому в адаптациях смысла 0.0. Никто не знает как это должно выглядеть, и топикстартер тоже не знает. Это как в анекдоте: станьте ёжики медведями, медведей никто не обижает. Уверен, что на том же Evo (про который ничего не знаю) тот же Alone Coder использует проц до такта, но за пределами Evo это не работает.
Да, я не знаю. Поэтому выложил в сообщество тему. Реально у меня два-три десятка игр из любимых, которые страдают от тормозов. Если бы нашлись умные люди со свободным временем и светлой головой, и сделали патч под турбо, кому бы от этого стало плохо? Нет, Реально, от этого бы кто-то пострадал? Если нет, то почему бы нет?

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

Цитата Сообщение от krt17 Посмотреть сообщение
Наркоманы ворчуны.
Есть простая задача. Классическая игра, идет приемлемо на 3,5 но в некоторых моментах существенно тормозит, для примера квазатрон.
Разберемся что нужно сделать чтобы при включении турбо 20 Мгц (да хоть на 100) дроид не носился как безумный дракон, а при скролле все сдвигалось с максимальной скоростью.
Организуется счетчик отсчитывающий число прерываний между обновлениями экрана. Пока после предыдущей отрисовки не прошло 4 кадра ждем. Соответствующий код
Код:
			org	0xdd7c

			ld	a, (0xaf2b)   ;это было
			cp	7
			call	nc, 0xc05a
l1
cnt			equ	$+1
			ld	a, 0
			cp	4
			jr	c, l1
			xor	a
			ld	(cnt), a
			ret
int
			push	hl
			push	af
			ld	hl, cnt
			inc	(hl)
			pop	af
			pop	hl
			jp	0xbd2d
			display	$

			org 0xe6e6
			jp	int
В данном случае потратил я на него с копаниями минут 15. На 3.5 мгц не будет дополнительной паузы и игра абсолютно не изменится.
Все, наблюдаем ровный фреймрейт при движении и шустрый скролл. Изначально квазатрон работал так, никакой синхры по прерывниям не было, но они включены, на них висят звуковые эффекты. Более менее постоянная скорость обеспечивается циклом паузы зависящей от количества врагов на экране, больше врагов меньше пауза.
Это не единственная проблема конкретно в этой игре, миниигра также не синхрится по прерываниям, причем в ней 2 фазы, выбор стороны и собственно сама схватка. Там тоже нужны задержки подобные игровому циклу, мне уже стало лениво искать куда их вставить.
При чем тут бла бла бла о том кто когда что с чем синхрил и какие турбы бывают, при чем тут демы.
Всегда бесила миниигра дребезгом клавиатуры. Очень сложно было не то, что включить нужные линии, но навестить на них из-за тормозов. Опять же, поле деятельности для патча!

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

Цитата Сообщение от goodboy Посмотреть сообщение
вспомининаю что когда у меня появился скорп с турбой (лет 25 назад)
я тоже игрался с этим направлением, но турбу включал перед прорисовкой в буфер / выключал при игровом цикле.

в том-же квазатроне есть свободное место под код, но автор не стал разворачивать циклы, вероятно решил - и так достойно.
в Ейдолоне вполне быстрая пересылка экрана из буфера - тормоза из-за прорисовки стен пещер (математика/фракталы)
.................
DJS известный хакер начала 90х, молиться надо что его благодать сошла на нас.
По поводу вашей подписи, не стоило так, честное слово. Я и не был никем особо по сравнению с именами тех лет. Так, один из многих. А тем более сейчас - давно пребываю в маразме. Произошло обострение симптомов Спектрумании очередное на почве ковида