Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Программирование (http://zx-pk.ru/forumdisplay.php?f=14)
-   -   Времянки Contended Memory Spectrum 128 (http://zx-pk.ru/showthread.php?t=16877)

ZXMAK 24th September 2011 21:03

Времянки Contended Memory Spectrum 128
 
2 Attachment(s)
Где можно найти детальную информацию о задержках contended memory в spectrum 128. Гугл находит только общую инфу про contended memory 48 спека...

Путем изучения эмуляторов, вычислил следующее:
Длина строки: 228 T

Первый такт на котором NOP'у добавляется задержка - 14362.

Задержки такие:
14362 - 6T
14363 - 5T
14364 - 4T
14365 - 3T

При реализации возникло две проблемы:
1) подрагивание на мультиколора на бордюре +-2 T, в эмуляторах этого дрожания нет. Есть какое-то дополнение WAIT'ами во время прерывания?

2) почему-то уплывает папирный мультиколор, откуда есть подозрение что задержки добавляются не так просто как я предполагал

Кто-то может помочь разобраться с этим? :v2_dizzy_vodka2:

NEO SPECTRUMAN 24th September 2011 21:11

Quote:

The contended memory timings differ on the +2A/+3 from the earlier machines; firstly, the timing differences mean that the top-left pixel of the screen is displayed 14364 T-states after the 50 Hz interrupt occurs, as opposed to 14336. The T-states (relative to the interrupt) at which delays occur are given in the following table:

Cycle # Delay
------- -----
14365 1
14366 No delay
14367 7
14368 6
14369 5
14370 4
14371 3
14372 2
14373 1
14374 No delay
14375 7
14376 6

and so on, until cycle 14494, when the display of the first scanline on the screen has been completed, and no more delays are inserted until 14593 (=14365+228) when the cycle repeats. The other difference occurs for instructions which have multiple 'pc+1' or 'hl' entries in the breakdown for the other machines: on the +2A/+3, these entries are combined into just one. This means that, for example, JR becomes pc:4,pc+1:8.

Unlike the base 128K machine, RAM banks 4, 5, 6 and 7 are contended. However, Port 0xfe is not; whether ports 0x7ffd and 0x1ffd are contended is currently unknown.
http://www.worldofspectrum.org/faq/r...kreference.htm
http://www.worldofspectrum.org/faq/r...kreference.htm

ZXMAK 24th September 2011 22:18

цифры это ладно, на NOP'ах один в один получается. Задержки на NOP'ах и многих других инструкциях все четко работают.

Странности на командах которые несколько байт из памяти читают, например:

Инструция JR NZ,disp:
Опкод: #20, #00
Тайминг: 12T (4, 3, 5)

Выполняем в contended памяти на такте 14362:

4T: читаем опкод => 14362 + задержка 6T + время цикла 4T = 14372
3T: читаем disp => 14372 + задержка 4T + время цикла 3T = 14379
5T: загружаем PC => 14379 + время цикла 5T = 14384

Итого операция должна завершиться на такте 14384. В спектакуляторе получаем 14401, почему???

Вот все задержки для этого периода:
Code:

14362 - 6T
14363 - 5T
14364 - 4T
14365 - 3T
14366 - 2T
14367 - 1T
14368 - 0T
14369 - 0T
14370 - 6T
14371 - 5T
14372 - 4T
14373 - 3T
14374 - 2T
14375 - 1T
14376 - 0T
14377 - 0T
14378 - 6T
14379 - 5T
14380 - 4T
14381 - 3T
14382 - 2T
14383 - 1T
14384 - 0T
14385 - 0T
14386 - 6T
14387 - 5T
14388 - 4T
14389 - 3T
14390 - 2T
14391 - 1T
14392 - 0T
14393 - 0T
14394 - 6T
14395 - 5T
14396 - 4T
14397 - 3T
14398 - 2T
14399 - 1T
14400 - 0T
14401 - 0T


Titus 24th September 2011 22:36

Пожалуй, стоит купить книжку про ULA. Дороговато, но раз купившие наши товарищи с нами не делятся...

Black_Cat 24th September 2011 23:10

Quote:

Originally Posted by Alexander Makeev (Post 418010)
Итого операция должна завершиться на такте 14384. В спектакуляторе получаем 14401, почему???

:) спрашивай здесь: http://zx.pk.ru/showthread.php?t=7720 :)

balu_dark 25th September 2011 02:50

Quote:

Originally Posted by Titus (Post 418014)
Пожалуй, стоит купить книжку про ULA. Дороговато, но раз купившие наши товарищи с нами не делятся...

...... то можно купить и поделится с нами :)

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

Titus 25th September 2011 03:06

Quote:

Originally Posted by balu_dark (Post 418103)
...... то можно купить и поделится с нами :)

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

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

NEO SPECTRUMAN 25th September 2011 15:44

Quote:

Конечно, за труд заплатить можно. Но книжка все же дороговата.
Пусть её буржуи и покупают. У них денег хватит.
А у нас должно быть ОБЯЗАТЕЛЬНО на халяву. Нас совесть не замучает.

Titus 25th September 2011 16:28

Quote:

Originally Posted by NEO SPECTRUMAN (Post 418151)
Пусть её буржуи и покупают. У них денег хватит.
А у нас должно быть ОБЯЗАТЕЛЬНО на халяву. Нас совесть не замучает.

Расскажи это тем, кто купил)

goodboy 25th September 2011 20:00

Quote:

Originally Posted by zebest (Post 418173)
MDA Demo 128 - дисковая версия?? У меня на этой версии более половины треков вообще не играют, а на tap-вЕрсии - играют все. Криво задискована или что-то у мну не так?

выложи свою версию - проверим


All times are GMT +4. The time now is 21:03.

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