Skrypt forum został zaktualizowany
Wszelakie błędy, pytania oraz prośby o nową funkcjonalność zgłaszajcie w tym wątku

dziwne zachowanie timerów

Szukasz drobnej pomocy przy kodowaniu, albo chcesz przedstawić światu swoją gotową lub w trakcie realizacji produkcję? To właściwy dział.
Wiadomość
Autor
Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

dziwne zachowanie timerów

#1 Postautor: Roody » wt paź 01, 2013 9:19 pm

Mam taką zagwozdkę.
mój prg zajmuje prawie całą pamięć z pominięciem d000-e000 (nie wiem czy to ważne)
Korzysta z timerów do generowania liczb losowych.
Mam taki problem , że zachowuje się inaczej na różnych emu i na prawdziwym c64.
generalnie zauważyłem że na vice jest ok jak przed procedurą losujacą zrobię jsr $fddd. A żeby działało to na prawdziwym c64 musi być wpięty AR 7.3 (taki mam) i muszę usunać z kodu ten skok (jsr $fddd). taka sama konfiguracja jak na c64+AR odpala sie poprawnie na CCSWin.
Jak myślcie o co ho?! chciałbym uzyskać ten sam efekt przynajmniej na vice i real c64. jeżeli odpalam na realu konfigurację z vica wygląda to tak jakby timer przejął kontrole nad przerwaniami i wszystko przyśpiesza kilka razy.
Pomóżcie.

Awatar użytkownika
wegi
Posty: 409
Rejestracja: wt lip 14, 2009 1:17 am
Grupa: ESM
Kontaktowanie:

#2 Postautor: wegi » wt paź 01, 2013 9:35 pm

Masz art skulla o używaniu timerów do cyklowania w ca-fan. Może ustawiasz timer w złym trybie albo może nie pamiętam, ale jakiś odczyt pojedynczego bajtu timera mógł go blokować do momentu odczytania drugiego jego bajtu...

Awatar użytkownika
Sebaloz/Lepsi.De
Posty: 3606
Rejestracja: ndz wrz 14, 2008 12:02 am

#3 Postautor: Sebaloz/Lepsi.De » wt paź 01, 2013 9:37 pm

Nie wiem jak twoj kod poprawic, ale na forum csdb jest kilka sposobow.
http://csdb.dk/forums/?roomid=11&topici ... allposts=1

Skoro masz wolna pamiec $d000-$e000 to mozesz wygenerowac losowe liczby pod kickassemblerem i dolaczyc taka tabelke do programu.
__________________________
Socjopatyczna Legia Commodore

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#4 Postautor: Roody » wt paź 01, 2013 9:46 pm

chyba strona ca-fan.pl nie działą. czy jest jakieś archiwum ? w którym numerze pamiętasz?

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#5 Postautor: Roody » wt paź 01, 2013 9:54 pm

może rzeczywiście olanie timerów i inna proc. losująca to było by rozwiązanie

Awatar użytkownika
Nitro
Posty: 1219
Rejestracja: śr wrz 03, 2008 8:23 pm
Grupa: Black Sun

#6 Postautor: Nitro » śr paź 02, 2013 9:19 am

Spróbuj Hoxsa, Vice nie jest idealny.

Awatar użytkownika
skull
Posty: 758
Rejestracja: pn wrz 15, 2008 8:18 am
Grupa: samar

#7 Postautor: skull » śr paź 02, 2013 9:53 am

Jeszcze musisz inicjować timer na początku, żeby zaczął zliczać:

lda #$11
sta $dc0e


wtedy załóż sobie też zasięg liczb do losowania

lda #$xx
sta $dc04

teraz możesz pobierać "losowe" wartości przez:

lda $dc04
Bo pecet to zwykły banan...

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#8 Postautor: Roody » śr paź 02, 2013 3:01 pm

dzięki.

mam jeszcze jedno pytanie zadam je w tym temacie żeby nie zakładać nowego.
Czy znacie jakiś paker który bezboleśnie (czyli wypluje gotowy plik z proc. depakującą) spakuje plik o wielkości 250 bloków (0800-ffff) ?

Awatar użytkownika
Nitro
Posty: 1219
Rejestracja: śr wrz 03, 2008 8:23 pm
Grupa: Black Sun

#9 Postautor: Nitro » śr paź 02, 2013 4:27 pm

Jak jednoplikówka, to Exomizer będzie najlepszy.

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#10 Postautor: Roody » śr paź 02, 2013 4:49 pm

Nitro a pomógł byś jak poprawnie stworzyć linię komend lub plik .bat . nie mam doświadczenia w tym temacie. dzięki z góry!

Awatar użytkownika
Sebaloz/Lepsi.De
Posty: 3606
Rejestracja: ndz wrz 14, 2008 12:02 am

#11 Postautor: Sebaloz/Lepsi.De » śr paź 02, 2013 5:24 pm

C:\c64\exomizer\dos\exomizer sfx $2800 piernik.prg -n -o piernik2.prg
__________________________

Socjopatyczna Legia Commodore

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#12 Postautor: Roody » śr paź 02, 2013 5:28 pm

dzięki Seba zaraz obczaję

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#13 Postautor: Roody » śr paź 02, 2013 5:48 pm

Prawie sie udało. mimo że po wylistowaniu jest odp. sys w basicu do uruchomienia, to i tak muszę go wklepać z łapy. run nie działa.
Druga sprawa to to.że po spakowaniu uszkadza frag. bitmapy która leży od e000 w górę.

Awatar użytkownika
Sebaloz/Lepsi.De
Posty: 3606
Rejestracja: ndz wrz 14, 2008 12:02 am

#14 Postautor: Sebaloz/Lepsi.De » śr paź 02, 2013 5:59 pm

uzywasz ostatniej wersji 2.0.7?

Added feature to sfx-mode that complains if the data it too big to fit in the available memory of the selected target, suggested by Luca/FIRE
__________________________

Socjopatyczna Legia Commodore

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#15 Postautor: Roody » śr paź 02, 2013 6:09 pm

sorry już wszystko ok.

Awatar użytkownika
wegi
Posty: 409
Rejestracja: wt lip 14, 2009 1:17 am
Grupa: ESM
Kontaktowanie:

#16 Postautor: wegi » ndz paź 13, 2013 11:32 pm

Dziwna nazwa wątku - timery zachowują się właściwie to programmer dziwnie je usiłuje oprogramowywać :-)

Awatar użytkownika
skull
Posty: 758
Rejestracja: pn wrz 15, 2008 8:18 am
Grupa: samar

#17 Postautor: skull » pn paź 14, 2013 9:52 am

przy zakładaniu wątku jeszcze nie było to takie pewne.
Bo pecet to zwykły banan...

Awatar użytkownika
Roody
Posty: 167
Rejestracja: śr sie 26, 2009 6:14 pm
Grupa: sabat

#18 Postautor: Roody » pn paź 14, 2013 11:51 am

Z tymi timerami to nie chodziło o ich odpowiednie zainicjowanie itp.
Po prostu na początku próbowałem załadować cały plik do ramu bez pakowania a nie wziąłem pod uwagę,że jak ładuje bez AR to komoda korzysta z kernala. a jak ladowałem z AR to niby było ok ale coś przestawiało w rejestrach odp. za timery i na niektórych emu proc. losująca zachowywała się dziwnie. sprawę załatwiło ładowanie spakowanego pliku . Na początku myślałem sobie - po co pakować i tak pewnie nikt nigdy oprócz mnie nie obejrzy tego na real c64......

Awatar użytkownika
kenji
Posty: 692
Rejestracja: ndz wrz 06, 2009 8:58 pm
Grupa: Dream

#19 Postautor: kenji » pn paź 14, 2013 12:23 pm

Jeśli za realny sprzęt uważasz też zestaw z 1541U, to jak najbardziej oglądnąłem Twoje demo na nim. Każde demo tak oglądam.
. : dream : .

Awatar użytkownika
skull
Posty: 758
Rejestracja: pn wrz 15, 2008 8:18 am
Grupa: samar

#20 Postautor: skull » pn paź 14, 2013 12:37 pm

dokładnie - z ultimatem to już przyjemność, nie trzeba się tak rozstawiać z tymi zasilaczami - wystarczy przełożyć pendrive. Szybkość procesu już nie dużo większa od odpalenia w emu.
Bo pecet to zwykły banan...


Wróć do „Programowanie & Produkcje”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość