401

(33 odpowiedzi, napisanych Programowanie - 16/32bit)

Oczywiście zawsze znajdzie się jakaś maszyna z takimi sterownikami, które zajmą absurdalnie dużo pamięci. Bardziej interesujący jest przypadek rozsądnej konfiguracji jakie ludzie mają na biurkach i oglądają na nich dema. Nie twierdzę, że chcę wymagać na maksa, tylko właśnie się zastanawiam jaki wyznaczyć sobie górny limit, bo gdy demo będzie już napisane i okaże się, że jednak przesadziłem, to już będzie trochę późno. Jak 4MB to 64*64kB to nie wiem czy 60*64kB jest jeszcze rozsądnie osiągalne, czy bliżej 56*64kB albo jeszcze mniej.

Hej. Mój pierwszy wątek w tym dziale :)
Może trochę dziwne pytanie, ale wiecie, wychodzę z atari 8-bit, a tam takimi rzeczami ludzie się martwię ;)
Interesuje mnie kwestia jak to jest z pamięcią w STE. Zakładając że ma się 4 MB na pokładzie, to na ile z tego można liczyć, że będzie dostępne dla dema, żeby nie ukisić systemu (a w szczególności, żeby sterownik dysku działał)?
Zaglądając do Sysinfo widzę u mnie (a także w Hatari), że membottom jest poniżej $20000, a memtop opiera się o pamięć ekranu.
Czy można zakładać, że w konfiguracji w której ktoś chce uruchomić demo membottom nie przekroczy $20000? a dokładniej, że mój program nie załaduje się powyżej tego adresu)? A jak to jest z memtop? Czy coś tam może być załadowanego przez system, czy zawsze jest tam wolne do phystop? Czy poprawnym jest założenie, że wszystko pomiędzy może być bezpiecznie dostępne dla dema?

Oczywiście rozumiem systemowe mechanizmy zarządania pamięcią, wołanie mshrink() itp. Pytanie tyczy się tylko tego ile system jest w stanie mi dać.

403

(893 odpowiedzi, napisanych Scena - 8bit)

Prawdę mówiąc, ja bym nawet nie wpadł na to, żeby publikować demo "ot tak". Przecież to bez sensu. Dla mnie od zawsze było oczywiste, że dema pisze się po to, żeby były wystawione w konkursie na demoparty, bo największą nagrodą jest obserwowanie reakcji publiki podczas prezentacji.
W 2021 mamy szanse na co najmniej jednego Losta i na dwa SV. Któreś z nich musi się udać, więc nie panikujmy :)

404

(128 odpowiedzi, napisanych Programowanie - 8 bit)

To jakieś kodowanie arytmetyczne żę tam są potrzebne mnożenia?

405

(3 odpowiedzi, napisanych Sprawy atari.area)

Co sugeruje, że w dziale fabryka wątki może zakładać tylko autor programu, gry lub dopałki do ST. Tak zawsze rozumiałem fabrykę, że nie jest miejscem na info, że ktoś gdzieś tam coś buduje, tylko że "hej, buduję to i to, czy to ma sens?".

Nie wiem jak z lutowniczego punktu widzenia, ale 65C02 nie ma żadnej przewagi nad 65C816 a ma niekompatybilności nie tylko w postaci braku nielegali ale nawet coś gorszego - kilka instrukcji ma inny czasu wykonywania, co może rozwalić nawet rzetelnie napisany kod.

Jak już idziemy w niekompatybilność to jeżeli byłby tylko dostępny, to 65CE02 byłby o wiele ciekawszy (Commodore 65 miał mieć go na pokładzie).

407

(11 odpowiedzi, napisanych Sprzęt - 8bit)

Ja akurat pisałem o jednobajtowych nopach, których sekwencji nie da się przerwać. 65CE02 nie ma tych nopów. On działa zupełnie inaczej.

408

(11 odpowiedzi, napisanych Sprzęt - 8bit)

Fox napisał/a:
laoo/ng napisał/a:

Wg tego dokumentu przerwanie nie może wskoczyć po instrukcji skoku względnego nie przekraczającego strony.

W jednym akapicie jest to napisane w trybie przypuszczającym, ale już w następnym jest plot twist.

Eh... dopiero teraz doczytałem ten drugi akapit.
Wygląda zatem, że jedyną taką sekwencja są jednobajtowe NOPy w 65C02.

409

(11 odpowiedzi, napisanych Sprzęt - 8bit)

Bardzo fajny dokument. Nie znałem go.
Zawiłości wewnętrznej pracy procesora nie są łatwe do zrozumienia. To wymaga sporo przetrawienia. Po prostu ostatni cykl rozkazu w rozważaniach na tej stronie nie jest tym, czym myślisz, że jest. Nawet poświęcili trzy paragrafy na uzasadnienie tego. Zastosowali konwencję, że pierwszym cyklem jest cykl, w którym rejestr rozkazu ma już załadowany opcode i procesor już może go wykonywać i wykonuje go aż do ostatniego cyklu, w którym ładuje opcode następnego rozkazu. Więc przykład lda #0 w ich konwencji wygląda tak:

1. przeczytanie operandu z pamięci
2. załadowanie operandu do akumulatora ORAZ przeczytanie opcode'u następnego rozkazu.

I tutaj ostatni cykl ma w sobie ten "pipelining", jak dla wszystkich rozkazów, w których przedostatni cykl (w tej nomenklaturze) nie jest cyklem zapisu, bo jego fizycznie nie można połączyć z fetchem następnego opcode'u.




W ogóle fajna rzecz. Wg tego dokumentu przerwanie nie może wskoczyć po instrukcji skoku względnego nie przekraczającego strony. To warto byłoby sprawdzić, bo teoretycznie sekwencji

  clc
l bcc l

nie można przerwać. Nie wiedziałem tego.

410

(11 odpowiedzi, napisanych Sprzęt - 8bit)

Opowieść z cyklu, że na Placu Czerwonym rozdają rowery...

Typowy XXL jest typowy :) Spróbuj, proszę, podchodzić trochę mniej bezkrytycznie do tego, co przeczytasz gdzieś w internecie, gdyż nie trzeba ostrego jak brzytwa umysłu, żeby zorientować się, że następny rozkaz nie może być czytany w cyklu zapisującym wynik działania poprzedniego rozkazu.

To o czym czytałeś tyczy się tylko niektórych instrukcji modyfikujących rejestry, w których owa modyfikacja następuje podczas czytania opcode'u następnego rozkazu. Np. lda #0 w pierwszym cyklu czyta opcode, w drugim operand, który jest ładowany do akumulatora właśnie w tym trzecim cyklu, w którym czytany jest opcode następnego rozkazu.

411

(88 odpowiedzi, napisanych Bałagan)

@Jacques z Flimbo prace trwają - pełnowymiarowy projekt jest na tyle trudny, że czeka na ukończenie dość silnego narzędzia, które go "uciągnie".
@Mq Ale to byłoby dobre. Sensowny monitor to teraz moja największa bolączka.

412

(88 odpowiedzi, napisanych Bałagan)

A gdyby jakiś odpowiednik "FujiNet" dla ST?
No jest Netusbee, ale to kabel a nie wifi i zapewnia bardzo cienką warstwę - bardzo dużo trzeba oprogramować po stronie ST, przez co cierpią transfery.

413

(49 odpowiedzi, napisanych Konsole)

Widać emulator emulatorem, a sprzęt sprzętem (tak jak na Lynksie). Ale jest już Dragonfly, to rozruszamy tę platformę, trzeba tylko trochę czasu i wysiłku.
Jeśli o mnie chodzi to chętnie wziąłbym na tapetę konsolkę z kartem, żeby to rozgryźć, ale do SV mam już grafik zajęty. Ale na drugie SV tego roku to kto wie? ;)

414

(49 odpowiedzi, napisanych Konsole)

Nawet chyba nie trzeba przepisywać tego na dasm. Trzeba przeorganizować te źródło, żeby mads wygenerował z tego surowy obraz cartridża, czyli bez żadnych nagłówków i od adresu $8000 (opcjonalnie madsem można wygenerować też header). Upewnić się, że program używa tylko ramu dostępnego w konsoli. Potem podpisać obraz za pomocą 7800sign. Trochę roboty jest i potrzebny jest ktoś kto już takie rzeczy ogarnia. Ja niestety w praktyce się mało znam. Ale rzecz jest do ogarnięcia.

415

(25 odpowiedzi, napisanych Programowanie - 16/32bit)

Chyba raczej nieskończenie wiele fps ;)

416

(15 odpowiedzi, napisanych Konsole)

Tutaj widać jakie Maria ma możliwości. Są tylko po prostu trudne do wykrzesania. Zwyczajnie brakuje czasu CPU żeby wygenerować te wszystkie fajne display listy i brakuje RAMu żeby je pomieścić.

Jacques napisał/a:

Ale poza tym nie widzę powodu by popadać w paranoję jak Chuck z Better Caul Saul (ktoś kojarzy)? ;)

Mi się skojarzyło już w poście 27 :)

418

(11 odpowiedzi, napisanych Konsole)

Skoro mamy dość standardowego peceta, który nazywa się Atari, to pytanie "ale czy to jeszcze Atari?" traci rację bytu, a przynajmniej mocno zmienia znaczenie :)

419

(3 odpowiedzi, napisanych Fabryka - 8bit)

Dużo fajnych sprzętów teraz się tworzy do małego atari, a ja szukam właśnie czegoś na SIO z kartami SD, żeby operować na obrazach ATR. Najlepiej właśnie nie microsd, tylko dużymi, bo chcę wykorzystać do tego kartę FlashAir. Ciekawi mnie zatem, czy jak taki napęd otworzy plik ATR, to kiedy go zamyka, żeby było możliwe podmienienie z zewnątrz zawartości. Da się to jakoś łatwo wymusić?

420

(55 odpowiedzi, napisanych Kupię / Sprzedam / Zamienię Atari)

O... nie myślałem, że pięćsetki były aż tak popularne.

421

(17 odpowiedzi, napisanych Software, Gry - 16/32bit)

@Cyprian: O Paaanie... CosmosEx to dla mnie jednak za duży kombajn jak na razie :)

@sqward: Tego nie widziałem. Zabawy z curlem wyglądają bardzo fajnie i 200 kB/s to nie tragedia. Podoba mi się. Dobra, jak dojdę do momentu kiedy coś naprawdę będę developował to zobaczę jak żonglowanie kartami wygląda w praktyce i wtedy podejmę decyzję. Póki co Atari ST + Ultrasatan to wystarczający wydatek jak na teraz.
Dzięki wszystkim za pomoc!

422

(17 odpowiedzi, napisanych Software, Gry - 16/32bit)

@lopez - więc póki co taki jest plan.

@squard - no właśnie zastanawiam się nad Netusbee, bo transfer bez żonglerki kart jest bardzo pożądany. Dlatego np wspomniałem o mountowaniu kart SD w FAT32, bo mam Toshiba Flashair, na którą można bardzo sprawnie transferować pliki po wifi, ale z tego co się orientuję jej firmware nie wspiera innych systemów plików niż standardowy. Martwi mnie tylko to, że transfer w STE to byłby z tego co czytałem poniżej 100 kB/s, a raczej przewiduję że jednorazowo będę potrzebował przenieść kilka MB, więc zysk czasowy może być dyskusyjny (tylko wygoda na plus).

423

(17 odpowiedzi, napisanych Software, Gry - 16/32bit)

Nie przebrnąłem przez wszystkie opisy bo to wszystko strasznie skomplikowane jak na takiego świerzaka jak ja, więc jaki jest killer feature za który warto dać 200 zł w porównaniu do 5 razy tańszego Putnika? Mnie przy moim przypadku użycia (wgrywaniu plików, które chcę odpalić) by przekonało tylko coś w stylu mountowania kart SD sformatowanych w FAT32 (na Atari STE z TOSem 2.06 + Ultrasatan). Jeśli nic tego kalibru, to chyba nie wykorzystam jego super mocy, a tylko wydam kasę.

424

(17 odpowiedzi, napisanych Software, Gry - 16/32bit)

Hm, no to może nie ma co drążyć tematu. Sterownik pana Putnika to tylko 10 ojro, a z tego co czytam rozwiązuje moje problemy.

425

(17 odpowiedzi, napisanych Software, Gry - 16/32bit)

Hej. Odkopuję, bo próbuję ogarnąć te zagadnienie będąc STkowym laikiem i zupełnie mi nie wychodzi.
Otóż mam STe, mam Ultrasatana, na nim mam sterownik ICD. wkładam kartę SD do drugiego slotu, odpalam ICDFMT, wybieram drugi dysk, formatuję, przechodzę do listy partycji... i tu nie wiem co zrobić, żeby mieć partycję 32MB widzianą pod Windowsem. W sumie żadnej działającej partycji nie udało mi się utworzyć. Trzeba jakiś konkretny typ ustawić?
Instrukcję z drugiego postu czytałem, ale te 22 proste kroki to chyba inny przypadek użycia, a obrazu z drugiego linka nie udało mi nagrać, bo u mnie USB Image Tool nie pozwala przestawić się w Device Mode.