1,576

(34 odpowiedzi, napisanych Scena - 8bit)

Zapewniam Cię iż idea odtwarzania sampli na GTIA nie jest nowa, eksperymentowała z nią całkiem spora grupka ludzi w zamierzchłych czasach, a ja  odtwarzanie sampli na GTIA robiłem sobie około '93 roku... byłem zainspirowany grami które ze spectrum-owskiego beep-era (np. Tim Folin i jego utwory z lat '80), wydawały całkiem ciekawe dźwięki :) A to wszystko zaczęło się dzięki kolegom spectrum-owcom z giełdy, którzy potrafili katować nas swoimi piskami :]

Wcześniej napisałem sobie np. program do czytania spectrum-owskich taśm na magnetofonie przerobionym na Turbo 2000 :) Chodziłem do zaprzyjaźnionych spectrum-owców i prosiłem aby nagrywali mi obrazki ze swoich gier ;) wybierałem takie w których brak atrybutów nie przeszkadzał zbytnio w wyświetleniu grafiki na Atari :)

Skończyło się jednak na fazie eksperymentów i odtwarzaniu sampli na GTIA, ponieważ doszedłem do wniosku że przeniesienie player-ów ze ZX-Spectrum to dla mnie droga przez mękę, z kilku powodów...

1) moja znajomość ASM Z80 była bardzo wątpliwa, zacząłem nawet pisać jakiś disassembler dla Z80, ale w tamtym czasie to SoTe mnie przegonił i napisał własny, a to z tego powodu że z jakiegoś powodu chciał disassmeblować ROM stacji LDW2000 :) Oczywiście zadziałało na mnie to jak demotywator i porzuciłem dalsze prace :)

2) nie miałem do tego zupełnie cierpliwości,  dissaemblowanie, cyklowanie, brrr ;)

3) wszelakie testy wykazywały i moja subiektywna opinia pokazywała że POKEY gra głośniej i wyraźniej :) cały pomysł zarzuciłem, ponieważ stwierdziłem że to droga donikąd.

Było jeszcze parę osób które miały podobne pomysły, ale nikt ich również nie zrealizował, dochodząc do podobnych wniosków co ja :) Dźwięk generowany przez GTIA od tej pory wykorzystywałem jedynie do generowania różnego rodzaju key-clicków i innych wkurzających beep-ów.

dopiero XXL po latach usiadł i wykazał się ogromną cierpliwością i zrobił to co było wiadome że da się zrobić ;) tzn. przeniósł playery ze spectrum :)

... a ja w tamtym okresie zacząłem inne eksperymenty z POKEY-em, a ich owocem po latach było mini-demko Digital Trash z 1995 roku. Dla dociekliwych dodam tylko, że w głównej części nie ma typowego ORA #$10, STA AUDCTLx ;-)

http://a8.fandal.cz/files/binaries/demos/d/digital_trash_demo.png

1,577

(34 odpowiedzi, napisanych Scena - 8bit)

Perestroyka ani tym podobne produkcje z muzyką Tomka Liebicha (np. Fucked Vocabulary czy Sky Computer Network)

nie używają GTIA, wiem to na pewno ponieważ player-y z perestroyki czy sky computer network musiałem napisać od nowa gdy robiłem kompilację muzyczek Tomasza Liebicha ( The TL's Old Music Show ) grającą jednocześnie obie wersje muzyki na Atari wyposażonym w drugi POKEY (stereo).

Jeżeli ktoś jeszcze tego nie widział/słyszał to plik do pobrania tutaj: The TL's Old Music Show

http://atariki.krap.pl/images/9/9a/Slight_TL_music_show.png

1,578

(34 odpowiedzi, napisanych Scena - 8bit)

sprawdziłem player znajdujący się demie Axel-F z muzyką Tomka Liebicha, nie ma tam użycia GTIA, choć dźwięki nie są typowe dla Atari :)

1,579

(34 odpowiedzi, napisanych Scena - 8bit)

Sikorowi chyba chodziło o to... http://a8.fandal.cz/detail.php?files_id=39

brzmi dziwnie, i w scroll-u są wypisane jakieś informacje o 5 kanałach, ale nie wiem czy tam jest GTIA, nigdy nie zaglądałem w kod playera.

1,580

(18 odpowiedzi, napisanych Programowanie - 8 bit)

no w opisie ACX (dlatego wkleiłem do tego linka) jest napisane dokładnie że takim urządzeniem jest "1090"...

http://atariki.krap.pl/index.php/1090

1,581

(7 odpowiedzi, napisanych Programowanie - 8 bit)

no masz rację co do odświeżania, zapomniałem o tym :) A co do '816 to nie miałem bladego pojęcia o innym zachowaniu '816 przy INC/DEC.

1,582

(18 odpowiedzi, napisanych Programowanie - 8 bit)

http://atariki.krap.pl/index.php/ACX

1,583

(7 odpowiedzi, napisanych Programowanie - 8 bit)

@Fox: fakt! :) ale jakoś nigdy tego nie zastosowałem :)

... i należy jeszcze dodać że przez błąd/uproszczenie state-machine w rdzeniu 6502, INC czy DEC tak naprawdę robią niepotrzebny jeden dodatkowy zapis do RAM, (Read->Write->Modify->Write), widać to przy LSR $D01A czy INC $D01A, żadna inna instrukcja nie zapewni tam takie ładnego jasnego "ciapa" szerokości dwóch cykli koloru :)

1,584

(16 odpowiedzi, napisanych Różne)

Ja również dziękuję :) Zabawa była przednia :)

Tylko ta technologia za nami nie nadąża... my tu proponujemy genialne i unikalne rozwiązania software-owe... i musimy się dusić w 1-rdzeniowym CPU,w dodatku OS nie zapewnia nam procesów, wątków i wywłaszczania ;)

1,585

(16 odpowiedzi, napisanych Różne)

mono, muza z dash-a rządzi :) zabiłeś mnie tym :) no i przydał by się nam dual-core 6502, na jednym rdzeniu mogła by lecieć twoja muzyka, na drugim kod dema :)

1,586

(7 odpowiedzi, napisanych Programowanie - 8 bit)

offtopic mode: ja często używałem jako "decrunch effect", lub sygnalizowania różnych sytuacji w swoim kodzie testowym, właśnie inc $d01a lub lsr $d01a. Tak samo przy wykorzystaniu faktu iż operacje typu INC, DEC są operacjami Read-Modify-Write, gdy chciałem zablokować przerwania NMI stosowałem INC $d40e, aa gdy chciałem odblokować NMI to po prostu DEC $d40e :)

1,587

(16 odpowiedzi, napisanych Różne)

Tego F1 w Altirra to by się przydało ze trzy razy tyle przy moim super kodzie :-)

EDIT:

Wiem że już po czasie, ale męczyło mnie że to takie wolne nawet z F1 :) Trochę przyspieszyłem... za to część Sikora ma nieco więcej czasu na wyświetlanie :) gdy teraz użyjesz F1 to szczena Ci opadnie :) ha ha ha ;-)

0 REM PRIMA-APRILIS 2014
1 REM BY SIKOR, SOME MODS IN SIKOR CODE DONE BY SEBAN :)
10 POKE 622,1:POKE 82,0:GRAPHICS 0:POKE 710,0:POKE 709,15:POKE 752,1:POSITION 0,11
11 ? "TO NIE JEST DEMO DLA NORMALNYCH LUDZI...":? "TO JEST [PRIMA APRILIS 2014 DEMO]..."
12 DEG :FOR I=0 TO 255:POKE 1536+I,12+5*SIN(I*1.4):POKE 40000,PEEK(1536+I)+9:NEXT I:POKE 40000,0
14 REM ------------------------------
15 REM -- SEBAN CODE STARTS HERE :)
16 FOR I=0 TO 15:POKE 712,I:POKE 710,I:POKE 709,15-I:GOSUB 1000:NEXT I:FOR I=1 TO 23:? :NEXT I:POSITION 0,0
17 FOR I=1 TO 959:? CHR$(6+RND(1));:NEXT I:FOR I=2 TO 38:POSITION I,5:? CHR$(18):POSITION I,19:? CHR$(18):NEXT I
18 FOR I=5 TO 19:POSITION 2,I:? CHR$(124):POSITION 38,I:? CHR$(124):NEXT I:POKE 82,3:POKE 83,38
19 POSITION 3,6:FOR I=1 TO 13:? "                                   ":NEXT I:DIM A$(512),B$(256)
20 A$="                                  TO JEST SUPER FAST TEXT MODE SINUS SCROLLER... "
22 A$(LEN(A$))="                                  "
23 FOR I=1 TO 40:B$(I,I)=CHR$(10):NEXT I:E=LEN(A$)-37:Q=0
25 FOR I=1 TO E:P=Q:FOR J=4 TO 36
26 K=I+J:Y=PEEK(1536+P)
27 POSITION J,ASC(B$(J,J)):? " ";
28 POSITION J,Y:? A$(K,K)
29 B$(J,J)=CHR$(Y)
30 P=P+8:IF P>255 THEN P=P-256
31 NEXT J:Q=Q+16:IF Q>255 THEN Q=0
32 NEXT I
33 FOR I=0 TO 15:POKE 712,15-I:POKE 710,15-I:GOSUB 1000:NEXT I:POKE 82,2:POKE 83,39:POKE 622,0:? CHR$(125)
34 POKE 709,15:? "TIME FOR NEXT PART..."
35 REM -- SEBAN CODE ENDS HERE ;) --
36 REM ------------------------------
99 GOTO 99
998 POKE 622,0:POKE 82,2:POKE 752,1:GRAPHICS 0:END 
999 REM - SOME SUBROUTINES BY SEBAN :)
1000 REM -- PAUSE FOR 1-FRAME --
1001 POKE 20,0
1002 IF PEEK(20)=0 THEN 1002
1003 RETURN 
1004 REM -- WAIT *N OF FRAMES --
1005 POKE 20,0
1006 IF PEEK(20)<N THEN 1006
1007 RETURN 

1,588

(16 odpowiedzi, napisanych Różne)

Hej! Napracowałem się co nie miara nad sinus scrollem co wchodzi w jedną ramkę ;) a nawet w mniej niż pół ramki (LIST 25,30) i mój super tajny kod jako dowód poniżej...

Plik .LST zgodnie z życzeniem "nomo" jako załącznik ;-), plik ma PeCe-towe EOL-e więc ENTER "H6:SIKOR.LST" z pod emu, lub nalezy dokonać konwersji EOL z CR,LF na $9B :)

o patrzcie, wchodzi w mniej niż pół ramki:

https://dl.dropboxusercontent.com/u/44199/sin_bas.png

0 REM PRIMA-APRILIS 2014
1 REM BY SIKOR, SOME MODS IN SIKOR CODE DONE BY SEBAN :)
10 POKE 622,1:POKE 82,0:GRAPHICS 0:POKE 710,0:POKE 709,15:POKE 752,1:POSITION 0,11
11 ? "TO NIE JEST DEMO DLA NORMALNYCH LUDZI...":? "TO JEST [PRIMA APRILIS 2014 DEMO]..."
12 N=128:GOSUB 1005
14 REM ------------------------------
15 REM -- SEBAN CODE STARTS HERE :)
16 FOR I=0 TO 15:POKE 712,I:POKE 710,I:POKE 709,15-I:GOSUB 1000:NEXT I:FOR I=1 TO 23:? :NEXT I:POSITION 0,0
17 FOR I=1 TO 959:? CHR$(6+RND(1));:NEXT I:FOR I=2 TO 38:POSITION I,5:? CHR$(18):POSITION I,19:? CHR$(18):NEXT I
18 FOR I=5 TO 19:POSITION 2,I:? CHR$(124):POSITION 38,I:? CHR$(124):NEXT I:POKE 82,3:POKE 83,38
19 POSITION 3,6:FOR I=1 TO 13:? "                                   ":NEXT I:DIM A$(512),B$(256)
20 A$="                                  TO JEST SUPER FAST TEXT MODE SINUS SCROLLER... "
22 A$(LEN(A$))="                                  "
23 DEG :FOR I=1 TO 40:B$(I,I)=CHR$(10):NEXT I
25 FOR I=1 TO LEN(A$)-37:POKE 77,0
26 FOR J=4 TO 36:Y=12+SIN(P)*5
27 POSITION J,ASC(B$(J,J)):? " ";
28 POSITION J,Y:? A$(I+J,I+J)
29 B$(J,J)=CHR$(Y)
30 P=P+10:NEXT J:NEXT I
31 FOR I=0 TO 15:POKE 712,15-I:POKE 710,15-I:GOSUB 1000:NEXT I:POKE 82,2:POKE 83,39:POKE 622,0:? CHR$(125)
32 POKE 709,15:? "TIME FOR NEXT PART..."
33 REM -- SEBAN CODE ENDS HERE ;) --
34 REM ------------------------------
99 GOTO 99
998 POKE 622,0:POKE 82,2:POKE 752,1:GRAPHICS 0:END 
999 REM - SOME SUBROUTINES BY SEBAN :)
1000 REM -- PAUSE FOR 1-FRAME --
1001 POKE 20,0
1002 IF PEEK(20)=0 THEN 1002
1003 RETURN 
1004 REM -- WAIT *N OF FRAMES --
1005 POKE 20,0
1006 IF PEEK(20)<N THEN 1006
1007 RETURN 

1,589

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

Ale ja nie rozumiem co w tym trudnego... 8-bit Atari wymaga systemu operacyjnego aby wykorzystać pełne możliwości współpracy ze stacją dysków (tak jak np. platforma PC wymaga np. MS-DOS).

Większość gier i dem, tzw. "cało-dyskowych" ładuje się bez potrzeby uruchamiania żadnego systemu operacyjnego (wszak procedury SIO znajdują się w ROM).

Większość gier dla Atari występuje w formacie binarnym ( http://atariki.krap.pl/index.php/Binarny_plik_DOSu ) i moim zdaniem to bardzo dobrze, bo to jest format uniwersalny. Do załadowania takiego pliku z kasety potrzeby jest prosty loader. A przypadku stacji dysków można wykorzystać DOS lub jakiś Inicjalizer.

Aby przenosić programy pomiędzy kasetą o dyskietką czy odwrotnie teoretycznie powinien wystarczyć sam DOS (polecenie COPY), jednak trzeba wźiąć pod uwagę specyfikę mechaniki magnetofonu, która cechuje się długim czasem reakcji na polecenie np. zatrzymania czy włączenia silnika. DOS kopiując sobie pliki z różnych urzadzeń (np. C: czy D:) ładuje do pamięci tyle danych ile ma bufora, potem zatrzymuje silnik nagrywa to co ma w buforze na dyskietkę, ponownie włacza silnik magnetofonu i próbuje odczytać następne rekordy z taśmy, niestety przy zastosowaniu tzw. krótkich przerw (99% gier w formacie binarnym czy BOOT), silnik często nie zdąży szybko zatrzymać się i ruszyć, a więc próba odczytu kończy się błędem bo taśma właśnie jest ustawiona już po tonie pilotującym gdzieś po początku interesującego nas rekordu danych.

Programy kopiujące stworzono tylko po to miały maksymalnie duży bufor i cała gra zmieściła się "na raz" w pamięci komputera, przez co unika się jakichkolwiek problemów z przerywaniem odczytu z magnetofonu (taki odpowiednik streamera w świecie 8-bit :] ).

Atari było świadome tych problemów i przewidziało rozwiązanie w postaci zapisu z długą przerwą (tonem pilotującym) między rekordami, ale to jest marnowanie miejsca na taśmie i znacząco wydłuża czas wczytywania. Polecenia LIST "C:"
i ENTER "C:", wykorzystują długą przerwę między rekordami i zatrzymują silnik magnetofonu pomiędzy odczytem każdego rekordu danych, dlatego dano również możliwość zapisy danych w postaci z krótką przerwą (polecania CLOAD, CSAVE).

Nie ma w tym wszystkim nic dziwnego, ani trudnego... wystarczy się tylko zastanowić dlaczego tak to wszystko wygląda. To nie chore wymysły programistów czy inż. projektujących to wszystko, ale bardzo sensowne rozwiązania wszelakich napotkanych wtedy problemów ;) i do kompletu mamy zachowaną pełną przenośność danych i programów pomiędzy różnymi rodzajami urządzeń podpinanych do systemów Atari.

1,590

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

Ależ to naprawdę nie jest trudne... tutaj masz obiecany "tutorial" http://youtu.be/7jSnZHtWohA

I do kompletu obraz dyskietki ( ATR ) zawierający Bibo-DOS 7.0 oraz File Copier 1.45: Bibo DOS 7.0

1,591

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

1) potrzebujesz jakiegoś DOS-a, np. DOS II+, My DOS, Super DOS, Atari DOS 2.5 [ten nie obsługuje dyskietek w gęstości Double (180k)]

2) DOS musisz załadować z dyskietki: włączasz komputer z wciśniętym OPTION, gdy dyskietka z DOS jest w stacji dysków

3) gdy już uruchomi się DOS (z dyskietki) ładujesz kopier np. File Copy 1.45 lub 1.32 czy 1.60

4) potem gdy uruchomisz program kopiujący i pyta się on on "input file" podajesz "C:"

5) gdy program z kasety załaduje się do bufora programu kopiującego, program zapyta o "Output file", wpisujesz więc "D1:nazwa.xex" (format nazwy w przypadku Atari DOS to 8.3 / 8 znaków nazwy i 3 znaki rozszerzenia / )

Czasami przed programem w standardzie znajduje się program ładujący pliki w formacie Atari DOS, najczęściej tzw. "wykrzyknik", należy go pominąć i rozpocząć odczyt od pliku znajdującego się po "!".

Niektóre programy kasetowe są w tzw. formacie "BOOT", te nie potrzebują specjalnego loader-a na kasecie (np. "wykrzyknika"), ale po skopiowaniu nie załadują się z DOS-a. Będą wymagały albo tzw. Inicjalizer-a, który potrafi ładować programy typu BOOT, lub zmiany formatu na format Atari DOS.

Jeżeli mój opis jest zbyt mętny i mało intuicyjny jak znajdę więcej czasu to zrobię Ci filmik z całą operacją.

1,592

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

Gdy nagrane w standardzie czy w jakimś turbo? Standard brzmi mniej więcej tak: Standard Tape Example

1,593

(4 odpowiedzi, napisanych Kolekcjonowanie)

Cześć,

Problem z błędami wczytywania podczas odczytu z magnetofonu został wyjaśniony całkiem niedawno... więcej informacji w tym wątku...

http://www.atari.org.pl/forum/viewtopic.php?id=9188

:D

1,594

(43 odpowiedzi, napisanych Scena - 8bit)

Zgodnie z obietnicą Fandal dodał Mr. Antic Demo do swojego archiwum:

Mr. Antic Demo #5

Mr. Antic Demo #6

1,595

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

Cześć,

Aby podłączyć coś takiego do Atari potrzebujesz tzn. interface do magnetofonu, Atari zapisuje informacje na taśmie używając modulacji FSK. O ile tor zapisu nie wymaga żadnych zabiegów poza dopasowaniem poziomu sygnału, o tyle w torze odczytu potrzebujesz demodulatora FSK, jest wiele rozwiązań, jednym z nich może być np to:

http://atariki.krap.pl/index.php/Interf … agnetofonu

EDIT:

przypomniało mi się że była podobna dyskusja również w tym wątku:

http://www.atari.org.pl/forum/viewtopic.php?id=11128

1,596

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

Hi again!

I think that we can send a bug report to Jer (Jerzy Sobola), he is maintaining all schematics of Atari hardware, earlier maintained by Mariusz Geisler. Here is the latest version of XF551 schematics, available on Jer website:

http://www.dereatari.republika.pl/atarisch/xf551.zip


greetz
Seban

1,597

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

Thanks Igor! Nice piece of work! :)

with greetings
Seban

1,598

(13 odpowiedzi, napisanych Sprzęt - 16/32bit)

Hej!

Wtrącę się trochę nico poza tematem, pamiętaj że karta 2GB karcie 2GB nie równa, karta od jednego producenta może mieć inną ilość sektorów niż karta innego producenta, mimo iż obie mają napisane że mają 2GB. Co do narzędzi do robienia obrazów pod Windows to znam dwa:

1) Win32 Imager -> http://sourceforge.net/projects/win32diskimager/
2) USB Image Tool -> http://www.alexpage.de/usb-image-tool/

pozdrawiam
Seban

1,599

(43 odpowiedzi, napisanych Scena - 8bit)

Kurcze, wydaje mi się iż to demo widziałem kiedyś... ale drugiej strony zupełnie również nie pamiętam ;/

1,600

(43 odpowiedzi, napisanych Scena - 8bit)

Hej!

O muzyce z The Top #1 pisałem w pierwszym poście, o tutaj ;)

seban napisał/a:

...w jednym ze screenów była muzyka potem użyta w demie the top #1 w części "future of spectrum", jak mi podpowiedział Miker ta muzyka oryginalnie pochodziła z tego programu: http://a8.fandal.cz/detail.php?files_id=4575

.