4,026

(21 odpowiedzi, napisanych Fabryka - 8bit)

przydalaby sie definicja szerokosci ekranu.

4,027

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

przyklad uzycia xSEGMENT i xBIOS_GET_FILE_OFFSET oraz naglowka konfiguracyjnego.

przyklad pokazuje relokacje xB np. pod ROM i ladowanie z memlo $0200

przykladowy plik wyglada tak:

                org     DMACTL
                .byte   $00
                org     NMIV
                .word   MyNMI
                org     DLISTL
                .word   DisplayList
                org     CHBASE
                .byte   >Fonts

        org $0200
               
    :$7000    .byte $ff


http://www.youtube.com/watch?v=dNOsrXpOrL0

bardzo szybki jest DeltaMusicComposer Player.

4,029

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

szkoda, ze tak pozno dolaczyl ze swoimi uwagami...

nowa zmienna xSEGMENT ktora przechowuje ilosc danych do przetworzenia w segmencie.

funkcja xBIOS_GET_FILE_OFFSET oddaje polozenie wpliku uwzgledniajace naglowki itd. natomiast xSEGMENT zlicza same dane w obecnym segmencie pliku (bez naglowka), swietny sposob na tworzenie np. licznikow ladowania

dodatkowo obsluga plikow binarnych w ktorych adres ladowania jest wyzszy od adresu konca danych

4,030

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

powrocil temat ograniczen plikow binarnych.

spotkal sie ktos z plikiem binarnym, w ktorym adres poczatku danych jest wiekszy od adresu konca danych?

czy jakikolwiek dos moze tworzyc takie pliki binarne i czy moglby je teoretycznie zaladowac?

----

sprawdzalem

MyDOS
- tworzy takie pliki prawidlowo, tworzy rowniez pliki binarne z adresem ladowania $FFFF
- nie laduje stworzonych przez siebie plikow binarnych. w zaleznosci od adresu ladowania bledy: 130 i 180
DOS 2.0D
- tworzy prawidlowo rowniez z adresem ladowania $FFFF
- laduje prawidlowo z wylaczeniem tego gdzie adresem ladowania bylo $FFFF
DOS 2.5
- nie tworzy
- laduje prawidlowo z wylaczeniem plikow z adresem ladownaia $FFFF

kilka innych ktore sprawadzalem nie tworza i nie laduja takich plikow, niektore przy probie ladowania zawieszaja komputer.

PC-narzady nie rozpoznaja takich plikow jako "pliki binarne"

4,031

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

ta sama osoba.
- doprecyzowane xBIOS_LIST_DIR, teraz w rejestrze A oddawany jest bajt statusowy wpisu w katalogu dysku.
przykladowo jesli chcemy wiedziec czy funkcja oddala nazwe pliku czy katalogu wykonujemy and #$10 (0 = plik)
- zmienna przechowujaca wielkosc sektora (srednio potrzebne wedlug mnie)
- doprecyzwane xBIOS_FIND, mozna indeksowac pliki na nosniku bez funkcji xBIOS_OPEN_FILE - nie trzeba "otwierac" pliku (dziala wielokrotnie szybciej)

po co:

mozemy na raz "otworzyc" wszystkie interesujace nas pliki na dysku, pliki te moga znajdowac sie w roznych katalogach.
dostep do takiego zindeksowanego pliku jest natychmiastowy, nie trzeba zmieniac katalogu (w razie potrzeby) i otwierac plkiku - co wiazaloby sie z przeszukaniem katalogu.

owszem, caly czas 1KB.


http://atari.pl/beta3.atr

4,032

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

myslalem, ze dosc...

jak pobrac pelny wpis w katalogu ze statusem, iloscia zajetych sektorow przez plik itd?

w petli pobierac kolejne wpisy funkcja xBIOS_LIST_DIR

ale jak pobrac jeden szukany?

nowa funkcja:


ldy <fname
ldx >fname
jsr xBIOS_FIND

standardowo C=1 wpis nieznaleziony

w rejestrze X index do wpisu z nazwa, statusem i cala reszta.
 
mialo nie byc takiej funkcji... i moze jej nie bedzie, poki co testowo.

4,033

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

kilka poprawek (w konfiguracji)

http://atari.pl/beta3.atr

4,034

(1,653 odpowiedzi, napisanych Bałagan)

@YERZMYEY/HOOY-PROGRAM

wszystkiego najlepszego

nie chce ciasta... poczestuj nowym utworkiem na Phaser1 ( juz mozna: http://atarionline.pl/forum/comments.ph ... amp;page=1 )

4,035

(4 odpowiedzi, napisanych Scena - 8bit)

http://asma.atari.org/asmadb/search.php?play=4805

i

http://asma.atari.org/asmadb/search.php?play=4806



to ten sam utwor.


prosze porownac:

http://youtu.be/XSw-C1gasuI?t=19m47s

http://youtu.be/XSw-C1gasuI?t=22m02s

4,036

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

wersja testowa.

zmiany:
- jesli urzadzenie obsluguje US to zmienna xHSPEED przechowuje HSIndex w przeciwnym wypadku $ff (poprzednio $00)
- bufor sektora wyrownywany do konca strony (poprzednio poczatku strony)
zmiany dotyczace standardowych ustawien:
- xB uruchamia sie z systemowym modulem I/O, domyslnym jest modul xSIOV (xBiosowy).

nowosci:
- nowa funkcja xBIOS_READ_SECTOR (i alias do xBIOS_PUT_SECTOR)
- naglowek konfiguracyjny:
- mozliwosc zmiany nazwy pliku do automatycznego uruchomienia
- mozliwosc zmiany adresu biblioteki
- mozliwosc zmiany adresu bufora
- mozliwosc zmiany adresow wektorow INIT i RUN
- mozliwosc wskazania modulu I/O
- mozliwosc nadania wartosci PORTB,NMIEN,IRQEN podczas ladowania pierwszego pliku
- relokator binariow,
- mozliwosc podzielenia/usuniecia z biblioteki "MENU" i sterownika systemowego


wersja testowa ma nastepujacy naglowek:

.byte    c'XAUTORUN   '  ; nazwa pliku automatycznego startu
.byte   >$0800     ; adres biblioteki xB - dowolny adres
.byte   >$0700     ; adres bufora - dowolny
.word   INITAD  ; zmiana adresu inicjacji
.word   RUNAD   ; zmiana adresu uruchomienia
.word   AOSV    ; adres sterownika OS
.word   AOSV_RELOC ; procedura relokacji zmiennych dla sterownika systemowego (xBUFFERH,xDAUX2,xDAUX1)
.word   xSIOV   ; informacyjnie adres sterownika xB
.byte   $ff     ; PORTB nie bierze pod uwage BASICA
.byte   $40     ; NMIEN
.byte   $c0     ; IRQEN

co oznacza ze bez problemu mozemy umiescic bilioteke i bufor pod rom juz w momencie uruchomienia. na starcie biblioteka kompilowana jest pod $2000 po czym przed ladowaniem pliku jest relokowana na wskazane przez usera miejsce,

4,037

(34 odpowiedzi, napisanych Scena - 8bit)

idea jest stara jak swiat ;-) nawet apple2 z tego korzystalo. a atari? po co... POKEY byl latwy w programowaniu, bez obciazenia cpu...

przyklad muzyki opartej na samplach dla GTIA:

http://atari.pl/stellar.mp3


a tu zmiana szerokosci impulsu:

http://atari.pl/dancing.mp3

:D

4,038

(34 odpowiedzi, napisanych Scena - 8bit)

Fox napisał/a:

Sound in Stereo - dzięki!


procedura:

23D5    LDA $CF               ; 3cyc ; A5 CF
23D7    EOR #$FF              ; 2cyc ; 49 FF
23D9    STA $D01F ;CONSOL     ; 4cyc ; 8D 1F D0
23DC    STA $CF               ; 3cyc ; 85 CF
23DE    PLA                   ; 4cyc ; 68
23DF    RTI                   ; 6cyc ; 40


dziala na przerwaniach, jedna wartosc, stala szybkosci...

czy ta procedura nie generuje przypadkiem barwy podobnej do tej przy "CSAVE" ewentualnie troszke wyzszy dzwiek ale tylko jedna nuta (stala czestotliwosc) ?

4,039

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

mysle, ze cel zostal osiagniety przy wersji ktora teraz bede publikowal.

doprowadzam do stanu w ktorym kazdy bedzie mogl bez mojej ingerencji skonfigurowac xB pod swoj projekt, lacznie z relokacja czy usunieciem z binarki "menu" czy usunieciem sterownika systemowego dla maksymalnego skrocenia biblioteki.

bede tez musial dodac to, czego na poczatku dodawac nie chcialem czyli dwie funkcje:
PUT_SECTOR
GET_SECTOR

opublikuje tez pelna liste zmiennych, co zostalo dodane, wyjasnienie bajtow konfiguracyjnych.

mysle, ze ustosunkowalem sie juz do wszystkich uwag.

4,040

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

dokonalo sie.

z relokatorem binariow calosc jest krotsza tylko o 16 bajtow. zrobilo sie tez miejsce na jakas nowa funkcje. zyczenia?

az dziw bierze

ale wiesz, ze rozmowa nie jest o procedurach nowych urzadzen?

jest co najmniej jeden program uzywajacy bonusowego zestawu znakow... w przeciwienstwie do pierdzacej procki, jalowy kawalek kodu zabierajacy atarowca 3 sekundy podczas kazdego startu...

gdyby tak policzyc wiesz ile watow energi zezarl od 30 lat razy ilosc sprzedanych sztuk ten bezuzyteczny spowalniacz?

Pin napisał/a:

... a Hias wywalił coś, bez czego system zachowuje w zasadzie swoje właściwości,

dokladnie jak usuniecie procek o ktorych mowa w pierwszym poscie. system zachowuje swoje wlasciwosci i szybciej bootuje.

wiec w czym problem?

:)

Stefan w ktorejs wersji qmega nie umiescil procedur nowych urzadzen mimo, ze w tym czasie byly urzadzenia ktore z nich korzystaly.

Hias tez wykazal sie krotkowzrocznoscia usuwajac miedzynarodowy zestaw znakow a dodajac Hispeed SIO ;)

4,046

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

plajer z goat trackera jest wprost do uruchomienia na atari. oprogramowanie do komponowania jest.

Montezuma napisał/a:

Moje pytanie jest nastepujace - czy istnieja takie urzadzenia?

nie.

mozna te procki bezpiecznie usunac z ROM. Atari bedzie szybciej BOOTowalo :-)

4,048

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

za naglowkiem mamy:

.byte    c'XAUTORUN   '

.byte   >xBIOS
.byte   >SECTOR_BUFFER
.word   INITAD
.word   RUNAD

.word   AOSV
.word   xSIOV

.byte   nag_PORTB
.byte   nag_NMIEN
.byte   nag_IRQEN

nazwe pliku autostart i glowne parametry. dla relokacji adres biblioteki, bufor, wektory init i run, nastepnie jest adres procedur I/O pierwsza to systemowa, druga xBiosowa.

a pozniej wartosci zapisane na czas relokacji, mozna dowolnie skonfigurowac xB pod swoj projekt. nic nie stoi na przeszkodzie, aby umiescic xB w pamieci pod rom lub w np. w MapRAM.

dojdzie prawdopodobnie jeszcze jedna zmiana. bufor sektora bedzie najprawdopodobniej wyrownywany do konca strony a nie jej poczatku - taka nowa wytyczna...

obecnie xB w stosunku do ostatniej wersji skrocil sie o 250 bajtow (ciagle jednak brakuje zalaczonego relokatora)

4,049

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

Kapitula przystala na znacznie wieksze zmiany niz poczatkowo zakladalem...

- biblioteka bedzie relokowalna i to my ustalamy gdzie. przed wystartowaniem biblioteki niezaleznej relokacji mozna bedzie poddac binarke, bufor, wektory init, run

to oznacza, ze jesli chcemy aby nasza gra ladowala sie bezposrednio np. od $200 to bedziemy to mogli zrobic bardzo prosto, chcesz zaladowac w miejsce xB? prosze Cie bardzo, juz mozesz.

mozliwe, ze trzeba bedzie opracowac prawdziwie dobry relokator. centrala juz prowadzi nabor.

4,050

(1,755 odpowiedzi, napisanych Fabryka - 8bit)

jesli mowa o module I/O to zmienna przechowujaca jego adres tez jest dostepna (xIOV).

podczas ladowania na pierwszym inicie mozna w programie umiescic jsr xBIOS_SET_DEFAULT_DEVICE i zwyczajnie usunac z pamieci sterownik OS i ewentualnie sterownik D:, teraz bedziemy mogli poszalec np. z przerwaniami podczas ladowania, wylaczyc os itp. (proces ladowania bedzie kontynuowany). po zaladowaniu korzystac juz tylko z funkcji xB przy obsludze plikow.

albo odwrotnie, jesli nie korzystac z modulu I/O SIO to w to miejsce mozna przeniesc bufor i dodakowo modul I/O np. RAMDysk. trzeba jednak pamietac, ze zmienne xB znajduja sie na jego koncu, dlatego mimo, ze skonfiturujemy xB tak, ze bedzie zajmowal mniej niz 1kb to zmienne nadal sa na koncu tego 1kb.

jeden z archontow ze Stolecznego Miasta Poznan tez zglaszal cos podobnego...