atarionline.pl SFX-Tracker - Forum Atarum

Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

  • :
  • :

Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

    • 1:
       
      CommentAuthorpebe
    • CommentTime14 May 2021
     
    @marok: Dzięki za wyłapanie braku załącznika. Jak zwykle coś popaprałem przy dodawaniu posta.

    Zamurowała mnie Twoja wypowiedz, ale proszę, nie bierz sobie tego za bardzo do siebie. Twoje wypowiedzi mają w sobie coś inspirującego, mimo, że (jak to ująłeś) brakuje Ci "pomyślunku" na wyższym poziomie. Nie trzeba być Alfą i Omegą, by być inspirującym.

    Mam jedynie nadzieję, że będziesz śledził ten wątek i jednak czasami wrzucisz swoje zdanie na temat tego projektu.

    W załączniku XEX do posta #49
    • 2:
       
      CommentAuthorpebe
    • CommentTime14 May 2021
     
    Siemandero

    Miałem dziś małą awarie komputera i udało mi się zrobić tyle, że zabezpieczyłem projekt na GitHubie (lepiej późno niż wcale :P)

    ->link<-

    Uporządkowałem kod i zacząłem bawić - to tak w ramach relaksu (po wakacyjnego na działce :P)

    W menu głównym, opcja GSD, a w niej początki:
    - THEME - wybór tematu koloru
    - ABOUT - Krótkie O...
    - i wskaźnik wolnej pamięci w procentach

    Trochę zabawy z zestawem znaków.

    Tyle na dziś.

    Nawet nie daje XEXa, bo nie ma co pokazać :(
    • 3:
       
      CommentAuthorpebe
    • CommentTime15 May 2021
     
    YO.

    Może nie takiej aktualizacji się spodziewaliście, ale kontynuując wczorajszą zabawę, ukończyłem Theme Manager :)

    Może się wydać mało intuicyjny, choć starałem (uwierzcie)

    Są zdefiniowane dwa tematy, które oczywiście można zmodyfikować. Do dyspozycji użytkownika jest aż 7 indywidualnych tematów, które trzeba zdefiniować, bo inaczej "ciemność atakuje" ]:->

    Aby przejść do edycji danego tematu, po jego wskazaniu klawiszami strzałek góra/dół, naciskamy SPACE, gdyż RETURN wybiera wskazany temat (i tu jest nieco kłopotliwa sytuacja z intuicyjnością, jak dla mnie)

    Reszta jest już kwestią obycia. Wybieramy dany element kolorystyczny z listy, naciskamy RETURN, aby przejść do jego modyfikacji.

    Tutaj standardowe klawisze strzałek i klawisze od 0 do 9 i A do F, zmieniają wartość koloru.

    Będąc w edycji koloru, szybko przełączysz się pomiędzy kolejnymi elementami schematu, używając klawiszy RETURN, TAB oraz SHIFT+TAB.

    Aby wyjść z edycji naciśnij klawisz ESC.

    Opcja SAVE zapisuje aktualny temat (bez możliwości nadania nazwy!)

    Opcja < Back wraca do listy tematów, gdzie można wypróbować swój temat naciskając RETURN.

    Jak na razie, zdefiniowane tematy nie są zapisywane na dysku. Jeszcze nie wiem, jak to zrobić w sensie użytkowym.

    Fajnie by było wypełnić listę tematów jakimiś "presetami".
    Jeśli ktoś miałby chęć stworzenia kilku tematów, to będę wdzięczny za pomoc. Odwdzięczę się w CREDITSach :)

    W załączniku XEX.

    Przypominam, że najświeższa wersja SFX-Trackera jest dostępna na GitHubie o tu -> ->link<-

    Pozdrawiam.
    • 4:
       
      CommentAuthorpebe
    • CommentTime16 May 2021
     
    Operacje I/O w MAD Pascalu.

    Za co odpowiada pole TSearchRec.ExcludeAttr?
    Jak można pobrać rozmiar pliku? (nie jest to konieczne, ale chciałbym wiedzieć)
    Co z podsumowaniem "xxxx free sectors"? Przy czytaniu w MP nie zwraca mi takiego pola.

    Czy standardem w nazwie pliku jest 8.3?
    Czy są inne standardy nazw plików w małym Atari? (rozumiem, że mogą być DOSy które inaczej to robią)
    Jak współpracować z katalogami? (SpartaDOS, HDD, inne)

    ^_^ Dzięki za wszelkie info
    • 5: CommentAuthormono
    • CommentTime16 May 2021
     
    * filesystemy ->link<-
    * XIO ->link<-
    • 6:
       
      CommentAuthorpebe
    • CommentTime16 May 2021
     
    @mono: Dzięki, zwłaszcza za XIO - ekstra opis.

    Co do systemów plików, jednak ostanę się przy standardzie 8.3 przy wyświetlaniu katalogu, ale...
    Wprowadzanie z "palca" ścieżki pozwoli na podanie dowolnego formatu. To chyba najlepsze rozwiązanie.
    • 7:
       
      CommentAuthorpebe
    • CommentTime16 May 2021
     
    Pomimo sporych perturbacji, udało mi się ukończyć opcje IO->DIR.

    Po jej wybraniu, wyświetlony zostanie monit ("ENTER PATH:") o wprowadzenie ścieżki. Na ścieżkę przeznaczonych jest 255 znaków, co powinno w zupełności wystarczyć różnych DOSów.
    Należy wprowadzić symbol napędu, np: "D:","H:". Nie trzeba podawać "*.*" na końcu, gdyż sprawdzane jest, czy występuje ten "wildcard" i jeżeli go nie ma, jest on automatycznie dodawany (to muszę jeszcze ogarnąć, bo niepozwala to, na pobranie listy dla, np. *.sng lub innych kombincji)

    Po zaakceptowaniu RETURNem, wczytana zostanie lista plików z podanej ścieżki. Wyboru dokonujemy klawiszami strzałek góra/dół, RETURN akceptuje wybór, ESC anuluje.

    Podawana ścieżka w opcji IO->DIR jest niezależna od innych opcji, co pozwala korzystać bez zmartwień z innych opcji (jeszcze nie zaimplementowanych :P)

    Załączam XEXa.
    • 8:
       
      CommentAuthorpebe
    • CommentTime16 May 2021 zmieniony
     
    Rozbawiłem się bo, jakżeż bez pardonu wysypał się SFXMM przy próbie wczytania katalogu, gdy uruchomiłem go z pod SpartaDosa hahahaha... Sparta wczytana z dyskietki! Nie mam obrazu Cardridgea.

    Nie umiem odpowiedzieć na pytanie, dlaczego?
    Domniemam tylko, że SFXMM nadpisał Spartę i odwołując się do operacji dyskowych, zwiechę zaliczył.

    Pod SuperDosem (tego wziąłem przez przypadek, podobna nazwa :P) też się zawiesił przy dostępie do dysku.
    • 9: CommentAuthortebe
    • CommentTime16 May 2021
     
    DIR w MP, niezależnie od DOS-u

    ->link<-
    • 10:
       
      CommentAuthorpebe
    • CommentTime16 May 2021
     
    @tebe, nie korzystałem z innych sztuczek, tylko MADziowe rozwiazania :D
    • 11:
       
      CommentAuthorpebe
    • CommentTime16 May 2021 zmieniony
     
    @tebe: Coś jest nie tak pod MyPicoDos z wczytywaniem listy plików. Wywala błąd 133. Czy to możliwe, że Pico inaczej czyta katalogi?
    • 12: CommentAuthortebe
    • CommentTime16 May 2021
     
    hmm, 133 oznacza że występuje odwołanie do pliku który nie został otwarty do odczytu lub zapisu

    nie znam MyPicoDos-a
    • 13: CommentAuthorpin
    • CommentTime16 May 2021
     
    MyPicoDos jest "inicjalizerem" a nie dosem.
    • 14:
       
      CommentAuthorpebe
    • CommentTime17 May 2021
     
    @pin: Dzięki, to wiele tłumaczy ;)
    • 15: CommentAuthormono
    • CommentTime17 May 2021 zmieniony
     
    Inicjalizer (jak wspomniany Micro Sparta DOS czy Chaos Loader, JBW Initializer czy SD Load) jest programem który służy do załadowania i uruchomienia z dysku pojedynczego programu w formacie wykonywalnym (COM). Nie zakłada urządzenia "D:" w systemie CIO i nie umożliwia temu programowi żadnych operacji na dysku. Stąd kłopoty.
    Co do DOS-ów, to tak - niektóre DOS-y, jak OIDP BiboDOS, MyDOS, Sparta DOS 3.x, umieszczają swoje procedury w pamięci pod ROM-em, więc jeśli je nadpiszesz wtedy wiadomo co się stanie. Proponuję dystrybuować swój program z konkretnym DOS-em na dyskietce i/lub zapisać w wymaganiach że potrzebne jest miejsce pod ROM-em. Przykładowo niezłym zamiennikiem Sparta DOS 3.x może być BW-DOS.
    Można też zamiast pamięci pod ROM-em wykorzystać pamięć dodatkową.

    Edit: Można też użyć LiteDOS, lub xBootDOS które mają znacznie mniejsze wymagania pamięciowe - LiteDOS daje MEMLO na poziomie $1000, xBootDOS $0980.
    • 16:
       
      CommentAuthorKaz
    • CommentTime18 May 2021
     

    Mono:

    Edit: Można też użyć LiteDOS, lub xBootDOS które mają znacznie mniejsze wymagania pamięciowe - LiteDOS daje MEMLO na poziomie $1000, xBootDOS $0980.


    Lub nawet samemu napisać sobie DOS-a, wedle swoich potrzeb okroić ze wszystkiego, co niepotrzebne. Jak to zrobić - pisał Fox w dodatku "Jak zmieścić DOS w 384 bajtach?" w książce "Mapa pamięci. Dyskowe systemy operacyjne" w reedycji Retronics. Tutaj na filmiku recenzowałem książkę, o dodatku zaczyna się w 14. minucie, 42. sekundzie:

    • 17:
       
      CommentAuthorpebe
    • CommentTime18 May 2021 zmieniony
     
    Dzięki za info, ale nie zamierzam teraz pisać własnego DOSa :D
    Pisałem o Pico, bo nie wiedziałem że to initializer. A poruszyłem temat DOSów, bo jakby na to nie popatrzeć, chciałbym, aby SFXMM działał pod możliwie największą ilością DOSów.

    W ostateczności, będę "dystrybuował" program z polecanym DOSem.

    Z innej beczki. Może być przykro.

    1. Mimo przyjemnych opinii i względnie szybkiego wsparcia, jakie mi udzielacie, nikt nie zgłasza błędów na etapie produkcyjnym.

    2. W ostatnim czasie wyłapałem ich całkiem sporo sam - nie ukrywam, przypadkiem. Udało się, ale ile jeszcze jest? Tego nie wiem.

    3. Trochę mam żalu o to, bo przedstawiam Wam wczesne wersje, gdzie mogę względnie łatwo je poprawić. Im dalej w las, tym mniej przyjemniej - dobrze o tym wiecie, jeśli programujecie.

    4. Dałem dostęp do kodów źródłowych na GitHubie, gdzie można zgłaszać błędy, propozycje i wiele, wiele innych.

    5. To przykre, że nawet nikt nie raczył dać "gwiazdki", czy napisać tu na Forum, że "fajnie że dałeś kod".

    6. Poczułem się zignorowany pod tym względem, że próbuje coś zrobić. Jeśli sądzisz, że nie ignorujesz mnie, patrz punkt 1.

    Oczywiście, nikogo do niczego nie zmuszam, ale jest mi przykro, o czym już napisałem. Jeśli ktoś uważa, że został urażony, to nie miałem tego na celu. To po prostu moje odczucia, którymi chciałem się właśnie tutaj podzielić - publicznie.

    Powoli sobie dłubie przy SFXMM...

    Z wyrazami szacunku,
    PeBe.
    • 18:
       
      CommentAuthorpirx
    • CommentTime18 May 2021
     
    hej PeBe, nie dziw się proszę, my tu robimy w niszy nisz, dodatkowo osoby, które są najbardziej zainteresowane nie są programistami. Dodatkowo w obecnej chwili można Twojego softu używać tylko do zabawy tym softem - sprawa się zmieni, gdy opublikujesz player i metody integracji z własnym kodem - procki dla MADSa i MadPascala, itp. Wtedy ktoś zacznie Twojego softu używać do własnej prodki i będziesz tęsknił za czasem, gdy nikt Ci się w proces twórczy nie wkaszaniał :)))

    Zobacz na takiego Fujineta - używa go pewnie z 500 osób a dopiero po ~2 latach zaczynają się pojawiać kontrybucje z community, mimo że Thomas wręcz BŁAGA o pomoc, bo sam wszystkiego nie obrobi. Pewnie w projekcie open source zaczyna się coś dziać dopiero gdy przekroczy jakąś masę krytyczną - może na małym atari to jest ~500 userów?
    • 19:
       
      CommentAuthorpebe
    • CommentTime18 May 2021
     
    @prix: Jesteś Super. Rozjaśniłeś mi dzień, a może nawet dni.

    Dziękuję za zrozumienie tego żalu. Rozumiem, że i tak nie uniknę krytyki: "może to zrób tak, albo tam to siak..." lub "To w tym programie działa inaczej". Owszem, będzie działać inaczej, bo głownie ja nad tym siedziałem i robiłem to pod swoje "widzi-mi-się". Pewnie sam, jak zacznę używać SFXMM aby coś zrobić, będę się denerwował, że: "a jednak mogłem to zrobić inaczej :F" I to zmienię :P

    Też jednak, dałeś mi też do zrozumienia, że jeszcze "trochę" pracy przede mną:
    ... player i metody integracji z własnym kodem - procki dla MADSa i MadPascala, itp. ...


    Cieszyłbym się, jak by mi ktoś w tym względzie wytłumaczył, na co zwrócić uwagę (póki jestem przed etapem robienia właściwego playera)

    Byłoby cudownie, gdyby znalazło się ~500 osób, które używały by SFXMM - nie liczę na to, ale... kto wie ;)

    FujiNet to też "citkę" inne zagadnienie. To kawał sprzętu, którego nikt wcześniej nie wymyślił do maluszka. To wielki projekt. Nie siedzę w mikrokontrolerach, bo chętnie bym przyłożył doń dłoń.

    Cóż... Mam nadzieję, że i inni też zrozumieją, że czasami można się poczuć odrzuconym i być w błędzie.
    • 20: CommentAuthormono
    • CommentTime18 May 2021 zmieniony
     
    @pebe: Spokojnie. Bywa, że po 11 latach ktoś bierze projekt i zaczyna go używać :) Tak, że - cierpliwości :)
    Żartuję, ale tak właściwie, w sumie i będąc szczerym, to nie bardzo.
    Ja się Twojemu programu przyglądam, bo jakkolwiek ciekawią mnie tematy muzyczne, to sam muzyki nie umiem i nie powiem co będzie ważne a co nie.

    Edit: ciesz się, że nie było jeszcze faków (w demach) hiehie.
    • 21: CommentAuthortebe
    • CommentTime18 May 2021
     
    Pebe, to znasz ?

    ->link<-
    • 22: CommentAuthormarok
    • CommentTime18 May 2021
     
    Trochę brakuje komentarzy odnoszących się (teraz już mniej), więc coś "wysmażyłem" - ale to raczej dość głupie (proszę o wyrozumiałość czytelników; jestem chyba dość bezwstydny w tego rodzaju tworzeniu; mam nadzieję też, że "nie nabroję").

    Faktem jest, że zgłaszanie uwag popartych spostrzeżeniami z działania programu najlepiej dowodzi, że program jest próbowany, wszechstronnie ćwiczony, testowany. Skoro więc odkryte zostały błędy, których żaden z potencjalnych testujący program nie zgłosił, świadczyć to może mniej więcej tyle, o czym jest tu (w pewnym "przytyku") napisane. To kwestia interpretacji tego ogólnego faktu (wydaje się - wysoce uzasadniona, trzeźwa, racjonalna) i ocena ogólna zaangażowania społeczności forum, która ma prawo wpływać na poziom mobilizacji (i ochotność) twórcy.

    Z uwag na ten tamat pozwolę sobie jeszcze na własny wywód.

    Kiedy rozwijany jest program, tworzy się czasem, o ile wiem, dużo węższy krąg osób bardziej w to zaangażowanych (i poczuwających się), będących często w jakiejś nieco bliższej relacji z autorem - relacji która czasem ma już jakąś historię, albo też z osób, które "zaskoczyły" (przez swoje zainteresowanie) i zostały zaproszone do bliższej współpracy nad danym projektem. To wtedy odbywa się już raczej drogą mailową - bo może być o tyleż łatwiejsza, co jeszcze bardziej swobodna i bezpośrednia. To taka uwaga apropo tego, że osoby, których dana produkcja w danym momencie jej tworzenia jeszcze akurat specjalnie nie "chwyta za serce" (aktualnie mogą być czymś zajęte, ich uwaga zwrócona gdzie indziej) trochę czują się odciążone od obowiązku dopingowania i słania pozytywnych sygnałów autorowi (a nawet pisząc dosadniej: czuwania nad jego dobrym samopoczuciem). Nie wszyscy autorzy tego też potrzebują w podobnym wymiarze, stąd różnie się do tego ludzie poczuwają odnosić (mając do czynienia z różnymi autorami).

    W tym konkretnym przypadku, nie ma (chyba) za wiele do eksperymentowania (z dźwiękiem i tworzeniem czegokolwiek). Nie jest to więc zbyt mobilizujące. Można to robić wyłącznie "na sucho", albo na tym etapie odpuścić. Może ludzie biorą za dobrą monetę, że program działa, jak deklaruje autor (nie sprawdzając zbyt wnikliwie wszystkiego), a wszelkie niedoróbki, jeśli nawet są, nie stanowią na tym etapie problemu, ponieważ jest to w tej chwili etap mocno "przedpremierowy" (dla nich - jeśli nawet przymierzaliby się aby z niego korzystać). Pewne rzeczy jeszcze wyjść muszą. I tutaj nie do końca może zgodzę się, że błędy warto wyłapywać na bieżąco, bo inaczej będzie dużo trudniej zlokalizować ich przyczynę (w kodzie), gdyż jeśli chodzi o sterowanie i wyświetlanie opcji w menu programu, to jest to zawsze dobrze określony kawałek kodu. Może nie jest przyjemnym wracanie do niego po pewnym czasie (trochę można już zapomnieć co i jak), ale sama lokalizacja błędu nie powinna być trudna (jeśli znamy uwarunkowania i skutki błędu). Może więc ktoś coś zauważył nawet, ale nie zgłosił. Może na tym etapie (programu) jeszcze tego po prostu nie zdążył sprawdzić (bo odroczył bardziej konkretne korzystanie z niego).

    Róźne są środowiska, tutaj "nasze" nie działa może na zbyt wysokich obrotach i na zbyt dużym entuzjazmie. Jeśli się nawet on gdzieś momentami pojawia, to raczej jest on krótkotrwały i niekiedy można by wnosić, że względnie powierzchowny. Nie wszystkich to z pewnością może zadowolić. Efektem tego może być zniechęcenie i własna powściągliwość (twórcza i "komentatorska").

    Jako twórca można działać na dużym entuzjazmie albo metodycznie i na chłodno (nie emocjonując się zupełnie). Ten pierwszy typ potrzebuje "stymulowania" z zewnątrz i miewa duże wahania nastroju (ale jest niektórym przyjemny w odbiorze i zaraźliwy swoim entuzjazmem). Plusem jest to, że może działać bardzo owocnie i wytężenie w jakimś okresie czasu. Sam się zaliczam do tego pierwszego typu (bo tak mam i wynika to trochę, jak sądzę, z natury), jeśli w ogólę mogę się klasyfikować do programistów / koderów (ponieważ nic szczególnego nie wyszło spod mojej ręki).

    Z doświadczenia ludzie wiedzą też dobrze, że zbyt aktywna (i mało skonkretyzowana) komunikacja nie sprzyja tworzeniu, ponieważ angażuje programistę zupełnie na innym polu niż to podstawowe. Przeskoczenie z jednej aktywności w drugą niesie ze sobą konieczność przerwania ciągłości myśli i jej realizacji. Do której trzeba wracać, a co wymagać może nieco czasu, czy odnalezienia ponownie właściwego nastroju czy przypomnienia sobie w detalach rozważanej wcześniej koncepcji (dalszego rozwoju programu). A nie zawsze dzieje się to tak od razu, z automatu i bez szkody.
    • 23:
       
      CommentAuthorpebe
    • CommentTime18 May 2021
     
    Dzięki chłopaki. Generalnie, każdy z Was ma rację.

    Nie jestem powściągliwy, często szukam atencji - to wyniki przeżyć, które są trudne i nie jest to miejsce na taki wywód.

    Chyba najlepiej sprecyzował to @marok. Jakże mi brakowało twoich uwag.

    @tebe: Dobry artykuł. Trudy powstawania, śmierci i odrodzenia projektu... Niezwykłe.

    Sam przeżyłem ostatnio coś podobnego w sferze egzystencjalnej. Miałem wielki zapał, by zmienić swoje życie. Nie szło źle, nawet udało się znaleźć praktykę, jednak pojawiła się bezlitosna zaraza, która błyskawicznie ukróciła mój entuzjazm. Utknąłem na prawie 15 miesięcy w domu, bez środków do życia (ale z pomocą rodziny). Po pewnym okresie walki o prace, zrezygnowałem. Stwierdziłem: Za wysokie progi szarżuje. Przestałem i po prostu "byłem".

    I co się stało? Odnalazło mnie zgubione, gdzieś po drodze szczęście. Dostałem szanse, z której zamierzam skorzystać. Już pokazałem, że coś potrafię i radzę sobie dobrze, co zostało docenione akceptacją warunków. W najbliższym czasie, oczekuję spotkania, by porozmawiać o szerszej współpracy.
    (jestem tym "podjarany")

    Rozumiem teraz, że trzeba dać sobie czasami (trochę) "na wstrzymanie", odpuścić, a niekiedy wręcz zrezygnować.

    2,5 roku temu dowiedziałem się też jednej, bardzo ważnej rzeczy. O swoich uczuciach trzeba mówić, nie tłumić ich w sobie, bo tłumione są jak grzyb w wilgoci, rozrasta się i w ostateczności pochłania żywiciela.

    Dzięki wszystkim, za powyższe wypowiedzi. Są bardzo cenne.
    • 24:
       
      CommentAuthorpebe
    • CommentTime18 May 2021
     
    @mono, co do faków. Pamiętam jak dziś, gdy "siedziałem" nad edytorem map Archon Adventures, jak jegomość wystawił screenshota z "pisiorem" z murku :D:D ehh... kiedyś wrócę do Archon Adventures!
    • 25: CommentAuthormono
    • CommentTime18 May 2021
     
    Aaaa, to pewnie był magister inżynier :) Mistrz-gość! Zresztą jak go poznasz to sam zobaczysz.
    • 26:
       
      CommentAuthorjhusak
    • CommentTime18 May 2021
     
    @pebe, playera napisz tak:
    - napisz w pascalu
    - przepisz (albo poproś mono, czy mnie) ręcznie na asembler.

    Ważne, żeby ten player miał procedury:
    - init
    - play (ro ramkę)
    - stop

    Pooglądaj sobie playery do rmt, czy innych, zwłaszcza sposoby wywołań, ew. jeśli można coś innego grać, niż utwór (instrumenty), to osobna procka, którą można uruchamiać równolegle z grającym utworem (najwyżej się jakaś nutka przyciszy/zgaśnie).
    • 27:
       
      CommentAuthorpebe
    • CommentTime18 May 2021
     
    @jhusak: W pascalu mogę machnąć plyera. SFXa częsciowo już mam w assemblerze, tylko go dostosować do nowych wymogów. Konwersja pascal na asm, może być dla mnie za trudna (wiem, jest wygenerowany kod przez kompilator) ale to, jak coś, zgłoszę o pomoc.

    Mam teraz pewną zagwozdkę związaną z kopiowaniem w obrębie RAMu pod ROMem.

    Jeżeli kopiuje z pod ROMu do bufora (obszar <C000h) jest wszystko OK, ale jeżeli mam bufor pod $C000, kopiuje mi siano.

    Co może być przyczyną takiego zachowania?
    • 28:
       
      CommentAuthorpebe
    • CommentTime18 May 2021
     
    Nie było pytania
    • 29:
       
      CommentAuthorpebe
    • CommentTime18 May 2021
     
    Zapomniałem, o tym, że ja z tego bufora ślę do urządzenia, a to jest "zabronione".

    Chciałem sobie zwolnić trochę miejsca, przenosząc bufor listy uniwersalnej (dla listy SFXów, TABów czy katalogu dysku) pod ROM. Dobrze działa, ale nie jako bufor do zapisu na dyskietkę przecież :D

    Muszę znaleźć gdzieś miejsce na bufor zapisu, ciut ponad 256 bajtów.
    • 30: CommentAuthormono
    • CommentTime18 May 2021
     
    Możesz wykorzystać obszary $400-$6FF.
    • 31:
       
      CommentAuthorpebe
    • CommentTime19 May 2021 zmieniony
     
    @mono: U... ale wysoko. Tzn. mi to nie przeszkadza. Co to jest za obszar? Jak to się ma w przypadku różnych DOSów ewentualnie innych urządzeń?

    Obecnie, udało mi się upchnąć w obszarze (PMG) pocisków, "lekko" nachodząc (64 bajty :P) na górną część pierwszego gracza, którego i tak nie wykorzystuje w operacjach we/wy.
    • 32: CommentAuthormono
    • CommentTime19 May 2021
     
    To obszar buforów I/O używanych podczas boot i pakietu FP oraz tzw. szósta strona której OS nie używa.
    • 33:
       
      CommentAuthorpebe
    • CommentTime19 May 2021
     
    O szóstej stronie wiedziałem, ale o reszcie już nie pamiętałem :)

    To bardzo odpowiednie miejsce na bufor zapisu :D
    • 34:
       
      CommentAuthorpebe
    • CommentTime19 May 2021 zmieniony
     
    Laydies and Gentelmen :D

    To jeszcze nie gra :(

    Ale duży krok jest zrobiony. Sporo czasu zajmuje strukturyzacja i optymalizacja kodu, który obecnie zajmuje niespełna 29Kb (bez danych!)
    Jeszcze jest miejsce, ale też jeszcze są do zrobienia opcje pomocnicze przy edycji - te akurat powinny nie wiele zająć, gdyż to "tylko wywołania odpowiednich procedur z parametrami - oraz, sam grajek.

    Grajka mam plan zrobić jako UNIT do MADzi (zgodnie z zaleceniami @jhusak, czyli będzie kompletnie niezależny od programu głównego, co pozwoli określić jednocześnie, jego zapotrzebowanie na pamięć.

    ---

    Dużo by pisać, co się zmieniło, ale podstawowe to:
    - można zapisać to co się "stworzyło", ale jeszcze nie można tego odczytać (haha)
    - wyświetlanie katalogu dysku dla dowolnego urządzenia obsługującego taką funkcjonalność
    - możliwość ustawienia tematu kolorystycznego - w planach zapis
    - nowa funkcja w edycji TABsów, pozwalająca bezwzględnie zmienić SFXa dla aktualnie odgrywanego dźwięku
    - przewidziana możliwość zapisu pojedynczych ustawień SFX oraz TAB

    i generalnie mnóstwo zmian w strukturze programu i kodu źródłowego.

    Dla chcących pogrzebać - XEX, a na GitHubie ->link<- elegancki kod z dużą ilością komentarzy i "ciutka" dokumentacji dt. struktury pliku SMM

    Mam prośbę dla posiadaczy SDX o przetestowanie, czy działa IO.
    • 35: CommentAuthorpin
    • CommentTime19 May 2021
     
    Się sprawdzi wieczorem.
    • 36: CommentAuthorpin
    • CommentTime19 May 2021
     
    I/O pod Sparta DOS X działa, testowo zapisałem też plik "song" i zapisał się poprawnie. 39 bajtów dokładnie.

    Program poprawnie wyświetla katalog D: (np. z dysku G:>test>*.*). Pytanie mam tylko, na ile wpisów katalogu przewidujesz bufor? Ja wiem, że to dopiero początek ale biorąc pod uwagę źródła innych formatów to miewam już kolekcje po kilkaset plików :) Może inaczej, min. 128 zmieścisz w pamięci?

    Zajebiście brakuje opcji "exit to dos".
    • 37: CommentAuthorpin
    • CommentTime19 May 2021
     
    Będzie opcja pisania pod tym programem w "stereo"?
    • 38: CommentAuthormono
    • CommentTime20 May 2021
     
    Albo w "quadro? Mamy przecież PokeyMAX-a.
    • 39:
       
      CommentAuthorpebe
    • CommentTime20 May 2021
     
    @pin: Ogromne dzięki za sprawdzenie pod SDX - bardzo mnie cieszy, że działa.

    W kwestii maksymalnej ilości wyświetlanych plików, sprawa ma się następująco. Bufor listy to 1792 bajty (może udałoby mi się zrobić 2048) jednak, nie jest on oszczędny. Na każdy element wpisu jest 20 bajtów, co daje 89 elementów listy - dla 1792 bajtów bufora, i 102 elementy - dla 2048.
    Tak się kończą uniwersalne rozwiązania :D

    Myślałem nad tym, jak ogarnąć doczytywanie, jednak nic nie wymyśliłem :( - może pomyślę nad tym, jak już ukończę program. Dużo zależy od tego, ile będę miał miejsca na takie rozwiązanie.

    Co do obsługi stereo/quadro, odpowiedź brzmi, nie. Nie brałem pod uwagę obsługi więcej niż czterech kanałów w wersji podstawowej. Może w przyszłości pomyślę nad tym.
    Na chwilę obecną, bardzo chciałbym ukończyć przynajmniej 4-kanałową :D

    Jeśli chodzi o Exit to Dos, będzie zrobione - dzięki za sugestie.
    • 40:
       
      CommentAuthorjhusak
    • CommentTime20 May 2021 zmieniony
     
    Nie rozumiem tego problemu z katalogiem. Katalog zawsze doczytywało się na bieżąco. A jak trzeba dodawało się filtr i to dosy powinny obsługiwać.

    A poza tym oj tam oj tam. Jak powiesz testujcie to będziemy testować. Na razie projekt jest fazie zmian, poprawek, zmian koncepcji, optymalizacji etcetera.

    Szersze tego testowanie na razie nie ma sensu. Jesteś na etapie Boga który jeszcze wszystko może zmienić. Zaglądanie do Gita też jeszcze nie ma sensu bo kod się zmienia dynamicznie.

    Nie jesteś ignorowany, jesteś pilnie obserwowany :) bo po CMC nie było żadnego wygodnego i prostego edytora muzyki.
    • 41:
       
      CommentAuthorpebe
    • CommentTime20 May 2021 zmieniony
     
    @jhusak: Może się zmienia dynamicznie, ale... patrzyłeś jak jest zorganizowany kod? :D Dla przykładu, czytanie katalogu dysku to zupełnie osobny plik umieszczony w modules/io/io_dir.inc ;)
    Jeśli chodzi o katalog, ja go wczytuje w całości zanim wyświetlę.
    (i tu świeży BUG) jak przekroczy wymienione 89 elementów, może się wysypać, lub nadpisać dane sterty - i na pewno tak będzie!
    Muszę to ogarnąć. Czeka mnie "myślenica" :D

    Dodałem już wyjście do DOSa, z ładnym "mesedż boksem" ;)
    W końcu mogę też zrobić info o nie zapisaniu setów w SFX/TAB.
    • 42: CommentAuthorpin
    • CommentTime20 May 2021
     
    Co do stereo, to zagraj na dodatkowym pokeyu to, co idzie na pierwszego (4 kanały o których mówisz), i daj możliwość regulacji opóźnienia tego, co leci na drugi układ. Prosty zabieg a efekt "pseudo stereo" dość potężny. Tak działa np. Megaplayer MacGyvera i tak odgrywa moduły CMC, czy MPT.
    • 43: CommentAuthorpin
    • CommentTime20 May 2021
     
    Aha, Sfx tracker działa na Rapidusie, tak jak by coś.
    • 44:
       
      CommentAuthorpebe
    • CommentTime20 May 2021 zmieniony
     
    @pin: Ciekawe rozwiązanie, pomyślę o takiej opcji na grajku, jak go będę projektować. Jeszcze tylko jedno: jak wykryć drugi POKEY czy PokeyMax? Bo szkoda czasu procesora na generowanie czegoś, czego się nie słyszy. Wiem, że może być opcja kompilatora dla poszerzonego stereo, ale... ja mam swoją wizję ;)

    A, "urobiłem" już listowanie katalogów na więcej niz 100 pozycji. Podzieliłem to na strony, gdzie przy większej ilości, dodaje na końcu listy "NEXT >>>", a przy następnych stronach, na początku "<<< PREV".
    Zastanawiam się jeszcze nad szybkim skokiem do strony z klawisza 1-9 i 0 jako opcja wpisania numeru strony.

    Takie rozwiązanie daje możliwość listowania nieograniczonej ilości plików, jednak nie wiem, na ile będzie to dobre odczucie dla użytkownika, gdyż odbywa się to w następujący sposób:
    - wczytywana jest lista pierwszych 100 wpisów;
    - jeżeli jest ich więcej, dodawany jest rekord do listy ">>> NEXT"
    - po jego wybraniu, lista jest wczytywana od nowa, z tą różnicą, że pierwsze 100 jest kompletnie pomijane i dopiero po tym, jest generowana lista
    - i tak dla każdej następnej i poprzedniej strony.

    Co prawda mało kto ma wypchane po brzegi katalogi, liczące setki plików. Nie powinno się tak robić, zważywszy na szybkość operacji IO - nawet na dużych sprzętach, taka organizacja może mieć duży wpływ na wydajność, zwłaszcza przy plikach o małej wielkości.

    Uważam, że moje podejście - w przypadku ATARI - jest najbardziej optymalne, a Ci co mają duże katalogi, winni je inaczej zorganizować ;)

    Jak dopieszczę, to wystawię XEX.

    @pin: Dzięx za testy sprzętowe! Już masz miejsce w CREDITSAch ^_^
    • 45: CommentAuthorpin
    • CommentTime20 May 2021
     
    Detekcja stereo:

    ->link<-
    • 46:
       
      CommentAuthorpebe
    • CommentTime20 May 2021 zmieniony
     
    XEX z paginacją listy plików :)

    bez szybkich odwołań do strony, bo komplikuje kod, a samo zrobienie paginacji zjadło mi ~1KB bajtów :/
    • 47:
       
      CommentAuthorpebe
    • CommentTime20 May 2021 zmieniony
     
    a tu XEX z CREDITSami ^_^
    • 48:
       
      CommentAuthorsun
    • CommentTime20 May 2021 zmieniony
     
    Wybieram theme dark, esc, esc i mam tak.
    To samo potem, jak wybiorę light.
    • 49:
       
      CommentAuthorpebe
    • CommentTime20 May 2021
     
    uuu... to nie dobrze, że tak masz... ;)
    Musieć to zobaczyć
    • 50: CommentAuthorpin
    • CommentTime20 May 2021
     
    Duża ilość wpisów nie jest problemem w przypadku file systemu Sparta dos, a mając na względzie nośniki "twardo dyskowe" i zbieractwo z tym związane ilość danych bywa znacząca.