p1pkin / demul

Automatically exported from code.google.com/p/demul
99 stars 19 forks source link

Under Defeat (Dreamcast) demo play rand mismatch #234

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Wait for attract demo play 

What is the expected output? What do you see instead?
"ERROR! DEMO PLAY RAND MISMATCH" message is displayed after a while

Генератор случайных чисел тестируется на 
предмет расхождения генерируемой им 
последовательности с предзаписанной 
исходной последовательностью. 
Инициализация генератора происходит 
конкретным числом, от старта расхождений 
нет, на 101 проверке происходит сбой. Между 
двумя проверками в процессе работы 
программы генератор вызывается несколько 
раз, от 40 до 70, сам генератор расчитывается 
через MUL.L инструкции и однозначен. То есть 
имеет место неверное количество вызвов 
генератора между проверками, что ведет к 
сбою последовательности.

Возможно проблемы тайминга или точности 
фпу (ранд используется активно в фпу 
расчетах, возможно для геометрии). Без 
снятия трассы и числа вызовов ранда с 
железа сложно вообще сказать, где тут 
проблема и как ее исправить. Оставляю иссуй 
для будущих поколений.

Original issue reported on code.google.com by cah4e3 on 20 Aug 2014 at 8:17

GoogleCodeExporter commented 9 years ago
Наоми версия данной игры имеет тот же 
генератор, но не имеет подобной проверки в 
аттракте, потому в коде нет даже такого 
сообщения и в игре никаких ошибок не 
выводится

Original comment by cah4e3 on 20 Aug 2014 at 8:18