[#1] Gry uruchamiane z HDD, a ich systemowość
...
[#2] Turbo Sprint - nowe wyścigi
Przykładem gry, która dobrze radzi sobie z odpalaniem z HDD i działaniem pod systemem Amigi jest The Settlers. Potrafi wykryć procesor, ilość pamięci CHIP oraz FAST, rodzaj tej pamięci i załadować co trzeba. A ta gra jest dosyć zaawansowana.

Zostawisz OS włączony, to musisz tak manewrować z kodem żeby Ci system nie przeszkadzał, np. w copperlistach, w szczególności wszelakich trickach ze scrollowaniem i przepinaniem bitmap w locie na różnych wysokościach ekranu.

Możesz zainstalować własny serwer przerwania VBlank na wysokim priorytecie i nie wywoływać niższych gasząc znacznik Z przez co odcinasz system od jakichkolwiek manipulacji na Copperliście.

Pomijam zmienny narzut z działania systemu w tle żrący 30-80% cpu. Na tym ugrzązłem na parę miesięcy parę lat temu, ostatecznie nie udało mi się wygrać więc od dawna usypiam system w czorty.

Tutaj jest trudniej, rzeczywiście, jednakże system Amigi sam z siebie nie zużywa dużo cykli ani procesora ani Blittera. Alokujesz Blitter za pomocą OwnBlitter(), ucinasz input.device, który pobiera najwięcej zasobów instalując handler i gotowe.

Sterownik DOS do twardego dysku powinien być włączony i tu trzeba polegać na bibliotece dos.library.

Zostaje włączanie systemu na czas doczytywania danych. I tu się robią kolejne schody - konfiguracja systemu jest nieprzewidywalna i jest prawie niemożliwym napisanie kodu usypiającego/budzącego tak, by bezbłędnie obsługiwał wszystkie możliwe pchełki, rozszerzenia i inne rzeczy działające w tle, a jednocześnie np. wciąż wyświetlał obraz gry (loading screeny czy coś).

W żaden sposób nie namawiam Cię do pisania gry bardziej pod system, jeśli sprawia to trudności podczas pracy.

System operacyjny jest tak skonstruowany by był niezawodny. Wydajność jest na drugim miejscu.

Jednakże udostępnia też szereg narzędzi do "wcinania się" w działanie wielu niskopoziomowych mechanizmów.

Wszelkie łatki third-party nie powinny Cię interesować, bo przecież mogą łatać systemowe funkcje w nieprzewidywalny sposób. Sam doświadczyłem tego przy datatypach.

Tak czy inaczej polecam korzystanie z systemu w minimalnym stopniu. Sam przecież skorzystałeś z mojego kodu do audio.device i alokacji kanałów dźwiękowych.

Trzeba dobrze rozdzielić proporcje. Dla mnie przyjazność dla systemu jest na pierwszym miejscu, bo to również upraszcza wiele spraw - i nawet nie kosztem wydajności.

System został napisany by sterować całym komputerem w sposób zorganizowany i ustandaryzowany - dodając przy okazji wielozadaniowość.
1
[#3] Turbo Sprint - nowe wyścigi

@Hexmage960, post #2

O co chodzi z tym sterownikiem Dos, bo nie rozumiem. Jak się go włącza i wyłącza?

Ostatnia aktualizacja: 09.05.2021 13:11:35 przez asman
[#4] Turbo Sprint - nowe wyścigi

@asman, post #3

Miałem na myśli to o czym pisał kolega Teh_KaiN odnośnie włączania systemu na krótki okres czasu celem dostępu do dos.library i zasobów dyskowych.

Sam nie mam w temacie włączania/wyłączania systemu za wiele doświadczenia (wiem jak wyłączyć przerwania), ale z tego co wiem, takie urządzenia jak DH0, DH1 (sterowniki DOS) muszą być uruchomione by mieć dostęp do dysku.
[#5] Turbo Sprint - nowe wyścigi
Czyli moja opinia, że sprzęt klasycznej Amigi krzywdził i nie pozwalał docenić zalet AmigaOS, jest prawdziwa?

Swoją drogą to ciekawe, że AMOS nie ma z tym problemów. Nie trzeba robić absolutnie nic żeby program działał z dowolnego napędu: dyskietki, twardziele, CD, RAM: czy jakikolwiek dysk logiczny AmigaOS.
[#6] Turbo Sprint - nowe wyścigi

@MDW, post #5

@MDW

Swoją drogą to ciekawe, że AMOS nie ma z tym problemów. Nie trzeba robić absolutnie nic żeby program działał z dowolnego napędu: dyskietki, twardziele, CD, RAM: czy jakikolwiek dysk logiczny AmigaOS.


To nie jest prawda. przed chwilą zrobiłem prosty test. Odpaliłem system bez startup, włożyłem do df0: pierwszy dysk od Legiona i go odpaliłem najpierw w taki sposób:
df0:legion

Rezultal: Czarny ekran
Drugi test, tak samo odpaliłem system bez startup: i odpalam grę w taki sposób
df0:
Legion

Rezultat: Czarny ekran.
1
[#7] Turbo Sprint - nowe wyścigi

@MDW, post #5

Czyli moja opinia, że sprzęt klasycznej Amigi krzywdził i nie pozwalał docenić zalet AmigaOS, jest prawdziwa?
W pewnym stopniu, ale to nie była wina sprzętu jako takiego, tylko tego, że sprzęt amigowy stał w miejscu, a konkurencja parła do przodu.
[#8] Turbo Sprint - nowe wyścigi

@Hexmage960, post #2

Tak, jest rewelacyjnie dopracowana. Zwłaszcza dostęp właśnie do napędu...

Samo to, że gra robi sprawdzenie sprzętu i się do niego dostosowuje nie jest objawem jej poprawności i dobrej współpracy z systemem.
2
[#9] Turbo Sprint - nowe wyścigi

@mailman, post #8

Dwie kwestie o które mi chodziło:
Gry, takie jak np.:

  • Settlers,
  • Colonization,
  • Lemmings 3,
  • Worms DC.

Mają własny instalator na HDD, napisany przez autorów tych gier. Chodziło o fakt, co pierwszy zauważył Michał Żukowski, że instalki WHDLoad są przede wszystkim pisane do gier dyskietkowych bez możliwości instalacji.

Sam fakt instalatora na HDD świadczy - według mnie - o dobrej współpracy z systemem.

Samo to, że gra robi sprawdzenie sprzętu i się do niego dostosowuje nie jest objawem jej poprawności i dobrej współpracy z systemem.

To prawda. Dla mnie tym wyznacznikiem jest właśnie instalator na HDD oraz poprawne działanie na różnych Amigach.

To pociąga za sobą w naturalny sposób konieczność alokacji zasobów systemowych.

Do pełni szczęścia brakuje tylko ekranu systemowego - ja takie gry na Amigę lubię najbardziej i sam biorę z tego przykład.
[#10] Turbo Sprint - nowe wyścigi

@Hexmage960, post #9


Mają własny instalator na HDD, napisany przez autorów tych gier. Chodziło o fakt, co pierwszy zauważył Michał Żukowski, że instalki WHDLoad są przede wszystkim pisane do gier dyskietkowych bez możliwości instalacji.

Sam fakt instalatora na HDD świadczy - według mnie - o dobrej współpracy z systemem.


Moim zdaniem jesteś w ogromnym błędzie.


To prawda. Dla mnie tym wyznacznikiem jest właśnie instalator na HDD oraz poprawne działanie na różnych Amigach.

To pociąga za sobą w naturalny sposób konieczność alokacji zasobów systemowych.


Absolutnie nie. Ile jest gier, które posiadają instalator, a kompletnie odcinają się od systemu? Ile jest gier, które posiadają instalator, a nie są w stanie pracować na żadnej innej konfiguracji niż taka, którą wymyślił sobie koder/programista?
[#11] Turbo Sprint - nowe wyścigi

@mailman, post #10

Absolutnie nie. Ile jest gier, które posiadają instalator, a kompletnie odcinają się od systemu?

Z tego co wiem nie ma takich gier. Gry z instalatorami czytają z dysku twardego, więc poprzez system. Można je uruchomić spod systemu operacyjnego - DOS lub Workbench.

Gry dyskietkowe czytające z pominięciem systemu należą do tych starszych. Nie można ich uruchomić inaczej niż bootując z dyskietki.

To są dwie kategorie, na jakie dzielę gry. WHDLoad naprawia gry z tej drugiej kategorii.

Skoro jestem w błędzie, niech kolega mnie z niego wyprowadzi.
[#12] Turbo Sprint - nowe wyścigi

@Hexmage960, post #11

Alien Breed Tower Assault, Worms i tony innych.



Ostatnia aktualizacja: 09.05.2021 17:34:23 przez mailman
[#13] Turbo Sprint - nowe wyścigi

@mailman, post #12

Hmm.. Worms DC jest dość fajnie zintegrowany z systemem, pozwala "uśpić" grę i wyjść do WB, pozwala czytać różne zestawy sampli oraz własne scenerie i grafiki plansz.

Posiada pomocniczy programik Worms Prefs do tworzenia własnych scenerii, gór itp.

Chyba że coś inaczej rozumiemy to samo pojęcie. Bo nie wiem skąd ta różnica zdań.

Ostatnia aktualizacja: 09.05.2021 17:58:24 przez Hexmage960
[#14] Turbo Sprint - nowe wyścigi

@Hexmage960, post #13

Napisałem WORMS, a nie WORMS DC.
[#15] Re: Turbo Sprint - nowe wyścigi

@mailman, post #14

A jest jakaś zasadnicza różnica między tymi grami?

Żeby była jasność, ja akceptuję gry korzystające z Copperlisty, View, ekranu intuition. Grafikę można realizować na wiele sposobów i nie chodzi mi tu o kompatybilność z RTG.

Odnosiłem się do wątku o instalacji na HDD oraz odpowiadałem oryginalnie na wypowiedź Teh_KaiNa, który borykał się z problemem odczytu danych z twardego dysku w swoim silniku. Wiem, że bezpośrednio nie dotyczyło to tamtego tematu.
[#16] Re: Turbo Sprint - nowe wyścigi

@asman, post #6

Oczywiście, że da się skwasić. Ale odwoływanie się do plików na urządzeniu DF0: jest skrajnym lamerstwem. Nie można było nazwać dyskietek Legion1:, Legion2: i czytać plików z Legion1: i Legion2 Gracz potem wrzuciłby sobie wszystkie pliki na HDD do dowolnego katalogu, zrobił tam sobie przypisania Legion1 i Legion2: i tyle. Żadnej magii, kombinacji i nawet bez instalera działa z HDD. Normalny odczyt normalnych plików AmigaDOS. Po co robić inaczej skoro tak działa bardzo szybko, sprawnie i wygodnie zarówno dla programisty jak i użytkownika? I to w zwykłym AMOSie.

Nie wiem skąd te problemy. W 1994 roku gdy pierwszy raz dotknąłem Amigi i AMOSa to nawet nie przyszło mi do głowy żeby zrobić inaczej. Nawet nie widziałem wtedy Amigi z HDD i zrobiłem w grze tak, że nie było problemów z HDD. Z wieloma różnymi elementami miałem problemy ale coś takiego jak normalne czytanie plików z dowolnego napędu to od początku była trywialna sprawa.
[#17] Re: Turbo Sprint - nowe wyścigi

@Hexmage960, post #15

A jest jakaś zasadnicza różnica między tymi grami?


To na tym zakończmy dyskusję, bo nie ma sensu
2
[#18] Re: Turbo Sprint - nowe wyścigi

@Hexmage960, post #11

Z tego co wiem nie ma takich gier.


Wszystkie gry korzystające z RNC dosio system mają możliwość czytania z dysku twardego z pominięciem systemu. Inna sprawa że działają tylko dla OFS/FFS tylko. Na przykład ostatnio wydany Wiz. Z tego co napisał autor, wszystkie wcześniejsze jego gry, też z tego korzystają.

(...) WHDLoad naprawia gry z tej drugiej kategorii.


Mówiąc delikatnie mijasz się z prawdą. Sam grzebałem (napisałem slave'y do nich) w dwóch grach, które bardzo mocno korzystają z Os, jak mnie pamięć nie zawodzi, to wszystko albo prawie wszystko było robione (w tych grach) tak jak to napisane jest w RKM. Łącznie z systemem GEL's. Bez problemu odpalisz je na kick1.3. Schody zaczynają się pod kick2 i wyżej.

Ostatnia aktualizacja: 09.05.2021 22:51:45 przez asman
[#19] Re: Turbo Sprint - nowe wyścigi

@MDW, post #16

Czyli jednak coś trzeba zrobić żeby to działało . Wpisanie w drugim przykładzie DF0:, to dla mnie jest mniej klepania w klawiaturę by dostać się tam gdzie chcę. A to że Amos sobie nie daję radę nawet w przypadku gdy zrobię coś takiego
cd Legion:
Legion

uważam za błąd.
Bo jeśli ktoś bardziej zaawansowany napiszę sobie prosty skrypt typu
hd0:gry/legion/legion

i gra nie doczyta danych, to jestem w stanie wybaczyć (przynajmniej na kick1.3).

Ostatnia aktualizacja: 09.05.2021 23:17:01 przez asman
[#20] Re: Turbo Sprint - nowe wyścigi

@MDW, post #16

Zgadzam się z przedmówcą - odwołanie do nazwy dyskietki np. "Legion:" ma większy sens niż do "df0:" bo prosty przypis w s-s lub u-s:
"Assign Legion: hd0:gry/legion/legion"
Pozwoli prosto zainstalować grę nawet "ręcznie" na hd0: w katalogu "gry/legion/legion".

AmigaOS to taki system, że sporo można nagiąć do swoich zastosowań (no chyba, że ktoś zrobi coś tak na "sztywno", że odbierze pole manewru).

Ostatnia aktualizacja: 09.05.2021 23:50:30 przez PWS
[#21] Re: Turbo Sprint - nowe wyścigi

@mailman, post #17

Nie rozumiem.

Nota: nie grałem w zwykłe Worms za wiele, ale podejrzewam że w temacie zgodności z systemem nie ma między tymi grami dużych różnic.

Ostatnia aktualizacja: 10.05.2021 04:32:46 przez Hexmage960
[#22] Re: Turbo Sprint - nowe wyścigi

@Hexmage960, post #21

Podejrzewasz, czyli nie wiesz. I ogólnie z tego wątku wynika że mało wiesz w temacie, w którym zabierasz głos.
1
[#23] Re: Turbo Sprint - nowe wyścigi

@mailman, post #22

Wydaje mi się logiczne, że Worms tego samego autora na pewno też ma instalkę na HDD i działa podobnie (zweryfikowałem to teraz i jest instalka). Worms DC to znaczne usprawnienie Worms, ale nie zupełnie nowa gra.

Jeśli kolega chciał wyprowadzić mnie z błędu, mógł to zrobić. Nie można nic napisać. Ja chętnie poczytam opinię kolegi, zawsze czegoś nauczę się.
1
[#24] Re: Turbo Sprint - nowe wyścigi

@mailman, post #17

Chciałem jeszcze wyjaśnić, że różnica zdań między nami bierze się z pomyłki.

Ja mam Worms: The Director's Cut w wersji oryginalnej BOX z instrukcją, więc wiem że ta gra oferuje multum nowych rzeczy w stosunku do pierwszej części Worms.

Zapewne koledze chodziło o to, że Worms DC ma mnóstwo usprawnień, ale z powodu dość zdawkowych odpowiedzi nie mogłem tego zrozumieć.
2
[#25] Re: Turbo Sprint - nowe wyścigi

@Hexmage960, post #24

Napisałem wyraźnie o co chodzi. Ty sobie dopowiedziałeś resztę.
1
[#26] Re: Gry uruchamiane z HDD, a ich systemowość

@mailman, post #1

Generalnie ja od gier dla podstawowych konfiguracji Amigi Classic nie wymagam włączonego multitaskingu, Workbencha w tle. Nie wymagam
nawet AMOSowego RAmiga+A. Nie jest to potrzebne. Ale czytanie danych z napędu MUSI się odbywać systemowo. Poucinałbym ręce za traktowanie Amigi jak NESa z kartridżami. szeroki uśmiech Jakoś działa to w wielu grach, które wyciskają ostatnie poty z gołej A500/1200, jakoś działa to w produkcjach AMOSowych (niekombinkwanych, robionych zwyczajnie).
1
[#27] Re: Turbo Sprint - nowe wyścigi

@PWS, post #20

Żeby Legion zadziałał z HDD to wystarczy skopiować zawartość obydwóch dyskietek do jednego katalogu, bez przypisań itd.

Chyba że nie zrozumiałem o co chodzi ;)
1
[#28] Re: Turbo Sprint - nowe wyścigi

@asman, post #6

Też spróbowałem, co zauważyłem:

Odpalę A1200 bez s-s i bez dyskietki w stacji, wkładam dyskietkę, wtedy df0:legion = prosi o ENV a potem czarny ekran.
Odpalę A1200 bez s-s i z dyskietką w stacji, wtedy df0:legion = gra działa.

edit---

Po kij prosi o ten ENV to nie rozumiem, na dyskietce Legiona takiego katalogu nie ma, do tego startup-sequence ma 6 bajtów bo zawiera tylko wywołanie pliku "Legion".
Możliwe że chodzi o to że jest dysk twardy w Amidze, i start bez s-s ustawia tego HDD jako główne źródło do przeszukiwania katalogów libs, fonts itd.... no bo przegranie plików z dyskietek do katalogu na HDD wystarczy żeby odpalić Legiona.

Moim zdaniem to nie jest wina Amosa, tylko zostało coś przekombinowane.

Ostatnia aktualizacja: 11.05.2021 13:59:04 przez karolb
1
[#29] Re: Turbo Sprint - nowe wyścigi

@karolb, post #28

w pierwszym wypadku SYS: = DH0:
w drugim przypadku SYS: = DF0:
2
[#30] Re: Turbo Sprint - nowe wyścigi

@asman, post #6

Zrobiłem ten sam test, ale wrzuciłem na dh0:libs plik crm.library i teraz wersja:

df0:
Legion


odpala grę.

Możliwe że to wina programu rtdd który nie potrafi znaleźć biblioteki crm, a nie samego Amosa ;)

edit----
Rzuciłem okiem na src Legiona, na samym początku polecenie Dir$ zwraca aktualny katalog, potem sprawdza czy jest w nim plik rtdd i go uruchamia. Następnie jest robiony przypis do katalogu fonts, nie widzę żeby był robiony przypis do katalogu libs.

Anyway, widocznie programista nie zakładał takiej dziwnej sytuacji, ale to nie znaczy że Amos ma z tym problem :)

Ostatnia aktualizacja: 11.05.2021 14:42:21 przez karolb
1
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem