1,726

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

i wyszedl oficjalnie: http://8bit-unity.com/?p=669


* Implemented high performance directory listing and file loading system using xBIOS

http://atari.pl/hsc/ad.php?i=1.

1,727

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

no i jest :) nowy xB - jak ktos chce do testow to zapraszam.

z grubszych zmian:

- zmienna dlugosc bufora,
- zmienna dlugosc katalogu

z mniejszych:
- predefiniowany czas oczekiwania dla FujiNet sciagajaca sektory z netu (user juz nie musi tego robic sam)

http://atari.pl/hsc/ad.php?i=1.

1,728

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

a co to jest xbios ?

.

1,729

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

@xxl: Czy ten czas oczekiwania to inny parametr niż to, co było potrzebne dla SIO2BT (timeout po wysłaniu komendy)? Na ile go ustawiasz dla FujiNet?

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

1,730

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

sa dwa wazne miejsca - petla oczekujaca na odpowiedz urzadzenia i retry - obydwa na raz to nie jest timeout.

standardowo nie ma problemu ale pojawil sie gdy mamy urzadzenie ktore moze np. w protokole odpowie przyjmuje rozkaz ale po minucie dopiero odpowie wykonałam ;-) i po tym zacznie wysylac dane. tak jest z FujiNet.

troszke tam pozmienialem... ogolnie wyplynal fajny temat - czy urzadzenia natychmiast przerywaja wysylanie danych jak dostaja sygnal z linii COMMAND ... sam jestem ciekawy odpowiedzi jak to wyglada fdd vs emulatory urzadzen SIO,

nie wiem co tam w PoP zrobi gosc ale najlatwiej jest po prostu skorzystac z tego ze FujiNet keszuje (dwa sektory na raz) i po prostu zwiekszyc licznik retry :-) banal.

najwieksza zmiana dotyczy tego ze urzadzenie moze: 1.wyslac rozna ilosc danych, 2. odpowiedziec w zaleznosci od czasu wykonywania roznych rozkazow... innymi slowy przygotowujemy xB pod sterowanie FN bez udzialu CIO ;-)

http://atari.pl/hsc/ad.php?i=1.

1,731

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

Jeśli dobrze pamiętam to w procedurze SIO są dwa liczniki DRETRY i CRETRY. Jeden jest ustawiany na dwa powtórzenia, drugi na 15. Ile retry i jakie dajesz u siebie dla FN (chyba, że masz retry inaczej zaimplementowane)? Timeout na odpowiedź po komendzie jest 2 ramki, natomiast typowy dla komendy R/P to jest 7 ramek - to by nam dawało 15*7=105 ramek czyli mniej więcej 2 sekundy. Do minuty jeszcze daleko...
Konkludując - ciekawi mnie jakie wartości timeoutów i retry ustawiasz u siebie do poprawnej komunikacji z FN. Bo inaczej będę musiał to sam badać :)

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

1,732

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

edit ---

u mnie  jest 42 ramki ale w cyklach wiec niezaleznie od pal/ntsc

Ostatnio edytowany przez xxl (2021-06-29 21:34:59)

http://atari.pl/hsc/ad.php?i=1.

1,733

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

xB oddaje statusy (zaleznie of funkcji) w C, rejestrach i reg.statusu.

obecnie przy EOF znacznik C=1 co okazuje sie byc klopotliwe poniewaz:

     jsr     xBIOS_OPEN_DEFAULT_FILE

     ldy     <dest
     ldx     >dest
     jsr     xBIOS_LOAD_DATA

C=1


ale jak ustalimy ilość danych, nawet na dlugosc pliku to EOF nie zostanie osiagniety:

     jsr     xBIOS_OPEN_DEFAULT_FILE

     ldy     <data_len
     ldx     >data_len
     jsr     xBIOS_SET_LENGTH

     ldy     <dest
     ldx     >dest
     jsr     xBIOS_LOAD_DATA

C=0

obydwa przypadki zaladuja tyle samo danych ale w drugim przypadku nie osiagamy EOF.



prawdopodobnie, kolejna wersja xB zglosi EOF poprzez C=0

sa jakies przeciwskazania ktorych jeszcze nie widze?

http://atari.pl/hsc/ad.php?i=1.

1,734

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

pojawila sie nowa mysll aby dodac funkcjonalnosc ladowania danych w trybie "burst" (w uproszczeniu: pomijajac bufor w pewnych sytuacjach)

mozliwa realizacja tego jest poprzez usuniecie juz istniejacych niektorych funkcji lub dodanie kolejnej: wymiana modulu FS.

podobnie jak SET_DEVICE daje mozliwosc wymiany modulu I/O (dzieki temu mozemy obslugowac CAR/FDD/RAMDISK itp.)
po wymianie modulu FS przykladowo LOAD_FILE i LOAD_DATA dzialalyby "w trybie burst".

http://atari.pl/hsc/ad.php?i=1.

1,735

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

kolejna zgloszona modyfikacja: jesli wyedytuje sie config w naglowku xB to ten już nie bedzie probowal zaladowac pliku konfiguracyjnego po uruchomieniu.

http://atari.pl/hsc/ad.php?i=1.

1,736

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

przyklad nowego modulu I/O + jedna funkcja: xBIOS_UNPACK_BINARY_FILE

tu mamy PoP zapisanego jako .xex

http://atari.pl/hsc/ad.php?i=1.

1,737

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

pieknie, 8bit-Unity dla Atari zaczyna uzywac skompresowanych binarek baj default. drugi po LiteDOS ktory uzywa formatu cex :D

http://8bit-unity.com/?wpdmpro=8bit-gob … 2020-05-18

http://atari.pl/hsc/ad.php?i=1.

1,738

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

poniewaz liczba programistow "C" korzystajacych z xB wzrostla do trzech :D to powstala wersja kierowana wlasnie dla userow "C":

- zintegrowany config (nie przeszukuje dysku w poszukiwaniu .cfg)
- zintegrowany OS SIO Driver
- zintegrowany dekompresor np. ladowanie spakowanych plikow binarnych (obecnie ZX0 ale wymienny na LZ4,aPL,ZX5)

http://atari.pl/hsc/ad.php?i=1.

1,739

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

Potrzebuję, aby XIOS był przechowywany skompresowany w pamięci ROM kartridża z grą. Inflate do pamięci, gdy wymagany jest dostęp do dysku. Używam Inflate/Deflate, ponieważ miał on, w czasie gdy go tworzyłem, dobry współczynnik kompresji. Pojawia się monit o to, który slot pliku ma być użyty, jak 0 do 9. Zapisuje się do pliku jak GAMSAV0 do GAMSAV9. Można go później ponownie załadować.
Mam dużą grę typu Adventure, którą złożyłem dla Atari 8-bit. Obecnie pracuję z systemem operacyjnym i zapisuję dane gry bezpośrednio do sektorów dysku, ale nie chcę mieć do czynienia z idiotami, którzy ignorują ostrzeżenia i umieszczają w systemie dysk z innymi plikami i kasują je. Są też wichrzyciele, którzy zrobią coś takiego celowo, aby twierdzić, że kartridż z grą jest wadliwy, próbowali dostać go za darmo lub żeby dostać darmową kopię od autora. Jeden z nich lubi zamieszczać obelgi na temat XXL w mediach społecznościowych i na forum AtariAge. Na razie powiem tylko, że nie lubię wchodzić na forum AtariAge, bo to toksyczne środowisko.
U mnie program ładuje się do pamięci przy 2800$ i zapisuje na dysk blok 2K, który ma wszystkie informacje o postępie gry.

1,740

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

pisz po angielsku bedzie nam latwiej.

z tego co zrozumialem:

1. masz gre na kartrydzu ktora ma zapisywac i ladowac dane z fdd - ten element chcesz zmienic.

2. dane z kartrydza ladujesz w swoj sposob, po zaladowaniu dekompresujesz dane - tego elementu nie chcesz zmieniac mimo, ze dekompresor ktorego uzywasz zajmuje razem z buforami ktorych potrzebuje do dzialania wiecej miejsca niz caly xB wraz z dekompresorem ZX0.

co do 1: chcesz wprowadzic zapis danych do pliku zamiast obecnego zapisu danych do sektorów

czy o to chodzi?

mam przygotowana (publikacja wraz z nowym 8bit-Unity) wersje xB ktora ma dekompresje plikow, dekompresor ladowania plikow binarnych w ZX0, jest krotsza (faktycznie moze byc dolaczana bo ma "w sobie" predefinicje dyskow) akurat dla kartrydzy to sie moze przydac.

http://atari.pl/hsc/ad.php?i=1.

1,741

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

I need XIOS to load into RAM at $2800 from cartridge. It will be loaded with a deflate routine.  I use Inflate / Deflate because it had a good compression ratio at the time I created it. The game will program will ask which file slot to use, like 0 to 9. Saves to a file like GAMSAV0 to GAMSAV9. You can reload it later.
I have a big adventure game that I made for an Atari 8-bit. Currently, I'm working with the operating system and saving game data directly to disk sectors, but I don't want to deal with idiots who ignore warnings and put other files on the system and delete them. The program saves a 2K block from RAM to the disk, which has all the data for progress of the game. Variables, and what has happened so far.

1,742

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

I will keep the discussion here. The other thread seems to be about people who want to bully each other that makes asses out of everyone. I want to run the XBIOS parts that I need to name the files, access the directory, load the binary and save the variable area used for the cartridge game. This allows the player to save his progress in a large role-playing game. Variable space is stored at $2,800 and is approximately 2KB in size.

1,743

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

jesli planujesz produkcję tylko dla CAR to moim zdaniem nie ma potrzeby uzywania xB. sa rozwiazania zapewniajace zapis danych na CAR bez potrzeby angazowania filesystemu.

przykladem moze byc: https://github.com/jhusak/jataricart

jesli jednak chcialbys uzyc xB to w przypadku zapisu na car potrzebowalbys odpowiedniego przygotowania takiego car... to moze byc klopotliwe, rozwiazanie nr.1 jest prostsze

http://atari.pl/hsc/ad.php?i=1.

1,744

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

I want to write from memory to disk. XBIOS will be called from a cartridge game.

1,745

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

OK. I remember what I was trying to do a few years ago. I needed the XBIOS source code so, I can add my piece of code to prompt the user for the file name. The program will save or load the game files from there using XBIOS. I can assemble the routine call it when the player wants to save their game progress.

The program currently uses a function that directly writes to disk sectors with no file names. The users will just format a separate diskette with nothing else on it, just for the game files. I have concerns that someone will accidentally put in a disk with other important files on it

Ostatnio edytowany przez PeteyM5 (2022-12-18 23:02:05)

1,746

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

skoro decydujesz sie na ten moim zdaniem trudniejszy dla Ciebie wariant to w pierwszej kolejnosci musisz przygotowac dzialajaca swoja gre w pliku .atr, poniewaz chcesz miec mozliwosc zapisu na car wiec pliki ktore chcesz zapisywac umiesc w drugim .atr (mam nadzieje rozumiesz jak wyglada zapis do pamieci flash) mozesz dla uproszczenia umiescic kazdy plik zapisu w innym pliku .atr, nastepnie Twoja gra musi zapisywac do tych plikow - przetestuj to na emulatorze, umiesc w D1 twoja gre a D2-D15 kolejne atr z plikami save.

jesli to zrobisz przejdziemy do umieszczenia tego na car

---
przygotuj jakis test i mi wyslij zebysmy wiedzieli ze sie rozumiemy

Ostatnio edytowany przez xxl (2022-12-18 22:59:54)

http://atari.pl/hsc/ad.php?i=1.

1,747

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

OK. I remember what I was trying to do a few years ago. I needed the XBIOS source code so, I can add my piece of code to prompt the user for the file name. The program will save or load the game files from there using XBIOS. I can assemble the routine call it when the player wants to save their game progress.

The program currently uses a function that directly writes to disk sectors with no file names. The users will just format a separate diskette with nothing else on it, just for the game files. I have concerns that someone will accidentally put in a disk with other important files on it.

[Edit] I am attaching the current disk save/load system that accesses sectors directly.

Ostatnio edytowany przez PeteyM5 (2022-12-18 23:36:51)

Post's attachments

Game_Disk_Menu.asm 17.64 kb, liczba pobrań: 4 (od 2022-12-18) 

Tylko zalogowani mogą pobierać załączniki.

1,748

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

Gienek napisał/a:

Jak już jesteś na linii to mam kilka pytań związanych z xBIOSem. Nie znam go a interesuje mnie sprawa obsługi cartridgeów.
1. Czy xBIOS umiałby potraktować pamięć carta jak sektory dyskietek ale z dziurami? Czyli np. z banku 8kB tylko połowa jest na te sektory a druga połowa to coś tam.

2. Czy biblioteki xBIOS umiałby się przecisnąć przez okno $D500-$D5FF. Chodzi mi, że jakbym zrobił takiego carta co przy zapisie bankuje jak zwykły Maxflash ale przy odczycie to tam w tym zakresie pojawi się normalny kod dla CPU to czy xBIOS dało by się ogarnąć w tych 256bajtach (ten zakres też mogłyby być bankowany)? Zmierzam do tego, żeby mając cart w ogóle nie używać pamięci RAM (no może stos).


1. tak,

2. tu są dwa problemy:
- xB uzywa samomodyfikacji a wiec standardowo nie moze byc uruchamiany z rom, moze byc skopiowany z rom do ram i tam dzialac. zmiana xB tak, zeby nie uzywal samomodyfikacji wydluzy kod (jesli mozliwa)
- xB ma tablice skokow na poczatku a wiec jesli masz bankowana pamiec z programem do odczytu na d5 do po powrocie programu z d5xx ta strona musialaby zawsze byc tak skonfigurowana zeby odczytywac ten pierwszy okreslony bank z tabela skokow xB.

http://atari.pl/hsc/ad.php?i=1.

1,749

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

Rozumiem.
Zawsze stronę D5XX mogę zrobić tak, że na początku dam sobie tablicę skoków. I w każdym "minibanku" te skoki będą identyczne. Więc przełączanie tych minibanków po D5XX nie wpłynie na powroty itp.

Bardzo ciekawy ten xBIOS :)

1,750

Odp: xBios - biblioteka IO dla gier ktore lubia przestrzen

Przewertowałem 20 stron i nie znalazłem. Na stronie też jest zaszarzony.
XBios obsługujący kartridże MaxFlash/JCart. Niema. Smuteczek. A może czegoś nie rozumiem.