651

(103 odpowiedzi, napisanych Zloty)

Nie wiem, czy w ogóle pojawię na Silly. Na chwilę obecną szanse 51%.

Maly_swd napisał/a:

co do wyjazdu/przyjazdu to moze kazdy okresli kiedy i jak, i sie zastanowimy:
Propozycja wyjazdu: Piatek okolo 8:00-9:00 McDonald/Metro Ratusz, powrot: proponuje na 10:00 w niedziele lub do uzgodnienia.

Gdybym jechał, to mi pasuje.

652

(41 odpowiedzi, napisanych Fabryka - 8bit)

Właśnie nie mam. :) Opierałem się wyłącznie na programie Jagera (jakiś commander), który miał napisane, że obsługuje MPD.
Co to jest subtempo?

653

(41 odpowiedzi, napisanych Fabryka - 8bit)

mono napisał/a:

dodano obsługę plików .MPD

A masz przykładowy plik .MPD ?

654

(20 odpowiedzi, napisanych Fabryka - 8bit)

mono napisał/a:

informacja o autorze i tytule songu wyświetla się z parametrem /X

Z ogonkami?

655

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Sikor napisał/a:
Pin napisał/a:

@Sikor: a co nielegale wniosły do AlleyCat? - pytam, bo nie wiem. Jest to chyba dobry przykład na użycie czegoś niekoniecznie potrzebnego ;)-

Nie jestem programistą, nie znam się, ale tam ponoć nawet dźwięki są na nielegalach.

W muzyce Alley Cat dwukrotnie został wykorzystany rozkaz LAX abs. Jego użycie w tym kodzie nie oszczędza żadnego bajtu ani cyklu - jedyne uzasadnienie to, jak wspomniał Jellonek, obfuskacja kodu. Można też bardzo łatwo zastąpić go standardowymi rozkazami, co ku uciesze garstki użytkowników 65816 właśnie uczyniłem:
http://asma.scene.pl/changeset/749

656

(11 odpowiedzi, napisanych Fabryka - 16/32bit)

Poszukuję teraz przykładowych plików z Falcona: DuneGraph (*.DGU), EggPaint (*.TRP) i IndyPaint (*.TRU). :)

657

(42 odpowiedzi, napisanych Zloty)

Chętny.

658

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Ciągnący się w tym (i nie tylko tym) wątku flame war sprowadza się do pytania "czy to jeszcze jest Atari" ?

Przygotowując grę na WAP-NIAK mogłem napisać ją tak, aby Pin był zadowolony (powrót do Sparta DOS X) lub zapewnić maksymalną zgodność z fabrycznie produkowanymi komputerami Atari (w tym 400/800 z 48 KB RAM). Wybrałem to drugie, bo dla mnie to jest bardziej Atari, niż maszyna z wymienionym procesorem i chipem graficznym, które mają zajebiste możliwości, ale nie mają oprogramowania, które je wykorzystuje.

Doceniam zapał elektroników do wymyślania rozszerzeń, ale jeśli potrzebuję wypasioną grafikę i procesor, to wyciągam z kieszeni Androida. Co do nabywców rozszerzeń: nikt Wam nie każe ich zakładać, a jeśli dobrowolnie sami zakładacie, to liczcie się z konsekwencjami - niektóre produkcje nie będą działać. A jeśli chcecie, żeby działały, to poproście autorów, tj. "szanowny XXLu, czy znalazłbyś czas, aby..." zamiast "ty głupi XXLu, jak dolutowałem Pentium 4 i GeForce to Twoja gra przestała działać, nie umiesz programować Atari".

HIP, TIP, 9++, 480i i ostatnio tryb Pavrosa to tak samo nieudokumentowane i nielegalne wynalazki, jak te instrukcje 6502. Powiem więcej - opcode-y 6502 są znacznie lepiej udokumentowane, niż te tryby graficzne, jak również są dłużej stosowane (chociażby wspomniany Alley Cat).

Popatrzmy na inne platformy. Scena C64 trzyma się mocno, bo tam nie ma wyścigu w tuningu sprzętu. Na Amidze, Falconie i ZX Spectrum prawdopodobnie dużo energii zużywa się na flejmy takie jak ten.

Pin napisał/a:

to dla mnie jest bez sensu. Zakładanie stabilności rozkazu niestabilnego

To dowodzi Twojej ignorancji w tym temacie. Rozkazy są określane jako niestabilne dlatego, że przy niektórych wartościach argumentów dają niepewne wyniki. Przy innych argumentach wyniki są całkowicie przewidywalne, co wielokrotnie było potwierdzane wyczerpującymi testami jak również teorią.

659

(29 odpowiedzi, napisanych Emulacja - 8bit)

Sun: jellonek probably meant "interested" as in someone who's going to do that as opposed to someone who just wants that.

660

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Rzeczywiście przykład nie był praktyczny. Dodatkowo anx jest wg niektórych źródeł niestabilny, a można go tu zastąpić lda #0. Można też pójść w przeciwnym kierunku i użyć nielegalnego opcodu sbc. ;)

661

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Sprawdzenie, czy mamy potęgę dwójki (lub zero):

 lax src
 dex
 sbx #0
; X=0, Z=1 <=> src=$80,$40,$20,$10,$08,$04,$02,$01,$00
; bonus: C=1, A=src

662

(638 odpowiedzi, napisanych Programowanie - 8 bit)

pajero napisał/a:

A czy zadziała

  isb (ZP1),y 
  bcc skip
  isb (ZP2),y ?
skip

 lda #0
 sec
 isb (ZP1),y
 bne skip
 isb (ZP2),y
skip

663

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Dla kompletu:

dcm (zp),y

- mniej inwazyjny od isb, bo w procesorze ustawia tylko znaczniki.
Jeśli A=0: Z jak dec, C=Z.
Jeśli A=$7f: N jak dec, C=!N.

xxl napisał/a:
Fox napisał/a:

Fajnie by było, gdyby ROR $D01B zastąpił suszarkę.

czy jest gdzies dostepny test dla GTIA? chcialbym sprawdzic czy odtwarzanie muzy na GTIA ma wplyw a jesli ma to czy jest roznica w przy roznych silnikach grajacych.

Na party Pavros twierdził, że wypuści test "wkrótce".

664

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Zmniejszenie słowa 16-bitowego:

Standardowo:

 lda word
 sne:dec word+1
 dec word
; abs: 11 bajtów, 13/18 cykli
; zp: 8 bajtów, 11/15 cykli

Nieudokumentowane:

 lda #$ff
 dcm word
 sne:dec word+1
; abs: 10 bajtów, 11/16 cykli
; zp: 8 bajtów, 10/14 cykli

Wartość $ff możemy mieć przypadkiem przed operacją lub potrzebną po operacji - wtedy zyskujemy więcej.

65816:

 rep #$20
 dec word
 sep #$20
; abs: 7 bajtów, 14 cykli (? - proszę o potwierdzenie)
; zp: 6 bajtów, 13 cykli (?)

Zmniejszenie słowa 24-bitowego:

Standardowo:

 lda word
 bne lo
 lda word+1
 sne:dec word+2
 dec word+1
lo dec word

Nieudokumentowane:

 lda #$ff
 dcm word
 bne lo
 dcm word+1
 sne:dec word+2
lo

Zmniejszenie słowa N-bajtowego:

Standardowo:

 ldx #0
 clc
loop lda #$ff
 adc:sta word,x
 bcs exit
 inx
 cpx #N
 bcc loop
 exit

Nieudokumentowane:

 lda #$ff
 tax
loop inx
 dcm word,x
 bne exit
 cpx #N
 bcc loop
exit

Zmniejszenie cyfry ASCII / kod ANTIC (np. liczba żyć w grze):

Standardowo:

 dec:lda lives
 cmp #'0'
 beq gameover

Nieudokumentowane:

 lda #'0'
 dcm lives
 beq gameover

@tebe: akurat nielegale potrafią zapisać do rejestrów sprzętowych mniej więcej to samo co zwykłe instrukcje. Fajnie by było, gdyby ROR $D01B zastąpił suszarkę. ;)

665

(42 odpowiedzi, napisanych Zloty)

Ja też się piszę. Jeśli jest jeszcze pokój 2-osobowy, to możesz rezerwować.

666

(103 odpowiedzi, napisanych Zloty)

Ja również ciągle aktualny.

667

(42 odpowiedzi, napisanych Scena - 8bit)

Proponuję następującą procedurę:
1. Jeśli SAP nie gra prawidłowo na sapemu, najpierw upewniamy się, że mamy najnowszą wersję tego pliku, tj. z http://asma.scene.pl/browser/trunk/asma
2. Próbujemy odtworzyć w ASAP - jeśli nie gra dobrze, to walnięty jest plik, zgłaszamy grupie trzymającej ASMA.
3. Jeśli w ASAP gra dobrze, próbujemy zapisać przy pomocy ASAP jako XEX.
4. Notujemy nazwę pliku w pliku tekstowym z informacją, że nie gra w sapemu oraz czy gra czy nie gra jako XEX.
5. Po zebraniu kilku wpisów przekazujemy informacje grupie trzymającej ASMA.

Jaki będzie efekt?
Najbardziej prawdopodobne jest, że pliki SAP będą wymagały poprawienia, bo są zgodne z SAP Playerem, a nie Atari.
Mniej prawdopodobne jest to, że znajdzie się ktoś dysponujący nadmiarem wolnego czasu i piwa, kto poprawi te SAPy.
Prawie pewne jest, że lista problematycznych SAPów pojawi się w ASMA w pliku Bugs.txt.
Istnieje możliwość, że autorzy sapemu i ASAP dołożą starań, aby te SAPy zaczęły grać.

668

(22 odpowiedzi, napisanych Bałagan)

Coma Light 13 ma ładną grafikę i kilka dobrych efektów, ale rewelacji tam nie widzę, ani nawet spójnego designu. Już bardziej podobało mi się Biba 3. Na razie widziałem tylko te dwa.

669

(45 odpowiedzi, napisanych Software, Gry - 8bit)

qbahusak napisał/a:

Z sapów zrobionych z softsyntha można wyciągnąć zarówno główny utwór, jak i obwiednie i brzmienia (wg pik33).

W jaki sposób?

670

(42 odpowiedzi, napisanych Scena - 8bit)

maciekm napisał/a:

Kolejny test, ktory zrobilem to xex z asmaconv ale odpalony ze sparty. Uruchomienie bez "x" - memory conflict. Ale z "x" dziala i gra bez problemu. Jedna dziwna rzecz, ktora zauwazylem ze reset podczas grania sap'a powoduje powrot do basica a nie do sparty (ultimate1mb).

xexy z asapconv możesz odpalać z dowolnego xex loadera, np. prosto z sio2sd.
Możesz hurtem skonwertować całą ASMA do xexów:
Pod Windows:

for /r ASMA %f in (*.sap) do @asapconv -o .xex %f

Pod innym systemem:

find ASMA -name \*.sap -exec asapconv -o .xex {} \;

Dodając --tag po .xex dostaniesz ekran z napisami zamiast czarnego, kosztem większego zużycia pamięci i tym samym większego ryzyka konfliktu z sapem (ale to dotyczy raczej pojedynczych sapów). xexy są kompresowane, więc będą zajmować mniej, niż sapy.
Poza tym temat był już trochę wałkowany.

671

(638 odpowiedzi, napisanych Programowanie - 8 bit)

Kolejny przykład: Efekt w trybie HIP lub TIP. Aby zaoszczędzić pamięć, tekstury przechowujemy tylko w wersji GR. 9. Konwersja dwóch pikseli z GR. 9 na GR. 10:

ALR #$EE

Wersje bez nieudokumentowanej instrukcji:
a. Zastępujemy rozkazami AND #$EE ; LSR @, efekt działa na mniejszym obszarze - np. zastępujemy część obszaru efektu stylowym "65816 inside".
b. Zastępujemy rozkazem LSR @ i zmniejszamy głębię barw tekstury z 4 do 3 bitów.

672

(99 odpowiedzi, napisanych Programowanie - 8 bit)

Brawo za udany eksperyment. :)

Taki tryb ma wadę w porównaniu do połączonych liczników: nie działa synchronizacja z bitem startu - resetuje ona liczniki kanałów (co w tym przypadku nic nie daje), ale nie dzielnik /28. W efekcie każda odchyłka prędkości po drugiej stronie (AspeQt) będzie powodowała błędy. Nawet przy idealnie pasujących prędkościach nie mamy gwarancji, że próbkujemy bity w połowie. Ogólnie oczekiwałbym dużo więcej błędów, niż w standardowym trybie. Ale jeśli to "dużo więcej" to np. jeden błąd na sto sektorów, to można powtarzać transmisję i nie będzie to przeszkadzać.

Ta potencjalnie spora wada jest równocześnie drobną zaletą: równie dobrze można wyłączyć "tryb asynchroniczny" i całą transmisję przeprowadzać na SKCTL=$23 - zyskujemy kilka bajtów kodu ;). Normalnie tylko wysyłamy na $23, a odbieramy na $13. Powiem więcej: aby nie chrzaniła się muza na kanale 3 trzeba używać $23 a nie $13. W przypadku $13 bit nadejście bitu startu resetuje liczniki 3 oraz 4. Mielibyśmy więc "dodatkowy efekt dźwiękowy" na kanale 3 o częstotliwości ok. 3 kHz.

673

(99 odpowiedzi, napisanych Programowanie - 8 bit)

Jeśli Synchromesh potrafi transmitować dane na wyższej prędkości, to najprawdopodobniej można go zmodyfikować, aby odbierał też rozkazy na wyższej prędkości.

W AspeQt jest opcja Use non-standard speeds - chyba należy tam wpisać 21.

674

(99 odpowiedzi, napisanych Programowanie - 8 bit)

tebe napisał/a:

xBios ma tą przewagę że działa z jakimkolwiek playerem grającym na 2 kanałach, jeśli player zajmuje więcej czasu transmisja co najwyżej zwolni

W jaki sposób realizowane jest spowolnienie transmisji?

xxl napisał/a:

na zaczepki z rozkazami, wydawanymi z szybkoscia 31668 bps ta stacja nie odpowie

Ten program dołączony do CA-2001 na dysku z DOS XL nazywał się Synchromesh. Być może dałoby się go zmodyfikować, aby chodził na 31668 bps.

AXE/SSG napisał/a:

czy mozna zmienic dzwiek transmisji z pikania na jakis inny?

Zdaje się w TA był krótki programik zmieniający pikanie na bulgotanie, ala akwarium w Alley Cat.

675

(99 odpowiedzi, napisanych Programowanie - 8 bit)

xxl napisał/a:

z plajerow do ktorych istnieja edytory ktory moze byc najszybszy? wydaje mi sie ze player cmc odpada ze wzgledu na polaczenie dwoch kanalow co w tym przypadku oznaczaloby jeden kanal dziwku podczas I/O... ja chce co najmniej 2.

propozycje?

http://energy.scene.pl/index.php?page=k … player-mpt - wystarczy przerobić na dwa kanały.
RMT też powinien się nadać do przeróbki.
CMC na dwóch kanałach może wykonywać się za długo, jeśli nie masz IRQ na transmisję.