2,751

(49 odpowiedzi, napisanych Programowanie - 8 bit)

Gotowy kod dla 1/8:

10 R=50
20 S=5
30 X=150
40 Y=100
50 DEG 
60 N=45/S
70 A=0
80 GRAPHICS 8
90 COLOR 1
100 FOR I=0 TO N
110 DX=R*COS(A)
120 DY=R*SIN(A)
130 DXP=X+DX
140 DXM=X-DX
150 DYP=Y+DY
160 DYM=Y-DY
170 CXP=X+DY
180 CXM=X-DY
190 CYP=Y+DX
200 CYM=Y-DX
210 PLOT DXP,DYP
220 PLOT DXM,DYP
230 PLOT DXP,DYM
240 PLOT DXM,DYM
250 PLOT CXP,CYP
260 PLOT CXM,CYP
270 PLOT CXP,CYM
280 PLOT CXM,CYM
290 A=A+S
300 NEXT I

Edit: Pecus mnie uprzedził - jego procedura jest lepsza :) i pewnie szybsza.

2,752

(49 odpowiedzi, napisanych Programowanie - 8 bit)

@stRing:

10 R=50
20 S=5
30 X=150
40 Y=100
50 N=90/S
60 DIM DX(N),DY(N)
70 DEG 
80 A=0
90 FOR I=0 TO N
100 DX(I)=R*COS(A)
110 DY(I)=R*SIN(A)
120 A=A+S
130 NEXT I
140 GRAPHICS 8
150 COLOR 1
160 FOR I=1 TO N
170 PLOT X+DX(I-1),Y+DY(I-1)
180 DRAWTO X+DX(I),Y+DY(I)
190 PLOT X-DX(I-1),Y+DY(I-1)
200 DRAWTO X-DX(I),Y+DY(I)
210 PLOT X+DX(I-1),Y-DY(I-1)
220 DRAWTO X+DX(I),Y-DY(I)
230 PLOT X-DX(I-1),Y-DY(I-1)
240 DRAWTO X-DX(I),Y-DY(I)
250 NEXT I

Edit: Jak to BartoszP napisał; poza tym:
1. Wyciągaj ile się da obliczeń poza pętlę.
2. Użyj plot+drawto.
3. Cos(a) to Sin(90+a) więc nie licz dwóch tablic.
4. Licz też sin nie dla ćwiartki a dla jednej ósmej.

Racja. Może TBXL ma to zoptymalizowane, ale w AB wyszukiwanie linii leci zawsze od początku programu.
A tak na boku: Gdyby nie były potrzebne przerwania NMI, to interlace z dowolną liczbą ekranów można zrobić całkowicie sprzętowo podając odpowiednie adresy nowych dlist w rozkazach JVB. Czyli:

dlist1:
  3*emp8
  linie trybu
  JVB dlist2
dlist2:
  3*emp8
  linie trybu
  JVB ...
...
dlistN:
  3*emp8
  linie trybu
  JVB dlist1

Ale chcąc zmieniać tryb bez pollingu VCOUNT lub RTCLK (albo zmiany na przerwaniu) się nie obejdzie (2 ostatnie wymuszają włączenie NMI).
Więc jeśli Sikor nie potrzebujesz na gwałt trybu 10 ani NMI to można z tego skorzystać.

Próbuj takiej sztuczki:

10 GRAPHICS 8:DL1=DPEEK(560):GP1=PEEK(623)
20 POKE 106,PEEK(106)-32: REM jest to mniej więcej rozmiar trybu GR.8 z dlistą
30 GRAPHICS 10:DL2=DPEEK(560):GP2=PEEK(623)
40 DO
50 DPOKE 560,DL1:POKE 623,GP1:GOSUB 100
50 DPOKE 560,DL2:POKE 623,GP2:GOSUB 100
60 LOOP
100 T=PEEK(20)
110 IF PEEK(20)=T THEN 110
120 RETURN

Być może da się zrobić ładniej jakieś PAUSE albo skorzystać z jakiejś zmiennej RTCLK$ (nie znam TBXL) zamiast wołać GOSUB 100.
Działa to tak, że tworzy GR8 w normalnej pamięci po czym, GR10 w obszarze przed nią. Przełączanie co ramkę (za pomocą zapisu do DLPTRS i GPRIORS) synchronizowane jest przez RTCLK (20). Ponieważ to rejestry cienie to najpierw zapis, potem synchronizacja - nie ma zerwania synchra bo to cienie.
Problemem jest tylko to, że instrukcji TBXL możesz używać na ostatnio otwartym GR. Żeby móc się w pełni przełączyć na poprzedni tryb trzeba by też przepisywać komórki używane przez S:. Ta procedura wystarczy do mrugania statycznymi obrazkami (RTCLK jest zmieniane na przerwaniu VBLK).

Edit: Literówki.

2,755

(6 odpowiedzi, napisanych Programowanie - 8 bit)

A czy można by prosić o opis formatu w Atariki? Dla potomności...

2,756

(6 odpowiedzi, napisanych Programowanie - 8 bit)

Bardzo dziękuję. Wydaje mi się, że ten opis wystarczy.
Mam jeszcze drobne pytanie precyzujące: Czy te sample są 8-bit czy 4-bit (jak ułożone w bajcie)?

Edit: O to mi chodziło. Jeszcze raz dziękuję.

2,757

(6 odpowiedzi, napisanych Programowanie - 8 bit)

Gdzie mogę znaleźć opis formatu sampli akceptowanych przez MPT 2.4? Atariki milczy, gógle też nic rozsądnego prócz jakichś formatów medycznych nie pokazało...

Edit: Zenon pisze, że ma się zaczynać od $90, ale co dalej?

2,758

(23 odpowiedzi, napisanych Konsole)

Niestety nic jeszcze nie oglądałem :(

2,759

(63 odpowiedzi, napisanych Bałagan)

MWK napisał/a:

...siostra się nie liczy ;-)

To zależy dla kogo drogi Panie, to zależy... ;]

P.S. A tak w ogóle, to może byś się objawił na jakimś sztabie? Od czasu do czasu się spotykamy z jadem i trubem. Ostatnio nawiązałem kontakt z urborgiem - może po nowym roku byśmy gdzieś usiedli wszyscy?

2,760

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

Atari800: http://atari800.sourceforge.net/
$ atari800 -basic program.bas

Zajmujcie się zajmujcie. Chwała bogu, że jest ktoś kto takie rzeczy robi.
[offtopic]Btw: Jest jakieś polskie forum ZX'owców? C64 niby ma c64scene.pl[/offtopic]

2,762

(14 odpowiedzi, napisanych Software, Gry - 16/32bit)

Z ciekawości: jak jest zapisany font 6x6, bo jeśli jest monochromatyczny i jest to bitmapa, to wychodzi mi (z długości podanej przez artik-wroc), że w żadnym bajcie nei ma nadmiarowych (pustych) bitów. 256 znaków * 6 pikseli * 6 pikseli / 8 bitów daje mi dokładnie rozmiar pliku w bajtach! Czy może źle liczę...
Mógłbym dostać też te pliki z fontem (artik-wroc - podesłałbyś mi wszystkie)?

2,763

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

@Candle: Zamailowałem do człowieka. Zobaczymy co odpisze.

2,764

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

Chciałem kupić coś takiego:

http://www.allegro.pl/item839920741_mon … _cdtv.html

ale okazuje się, że jest niesprawne :(
Czy ktoś podjąłby się ewentualnie naprawy?

2,765

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

Z ustawianiem fuses uważaj, żebyś sobie nie przeprogramował którejś linii uniemożliwiającej programowanie szeregowe (doczytaj w dokumentacji - nie pamiętam która to linia). Jedyne wyjście potem to skasowanie takiego delikwenta programatorem równoległym. Procesory mogą być jeszcze dobre...

Edit: Mam na myśli RSTDISBL (b7 high fuse byte) i sytuację kiedy ustawiasz pin RESET jako GPIO.

2,766

(16 odpowiedzi, napisanych Scena - 8bit)

@Pin: A dlaczego Crownland nie działa na real Atari?

2,767

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

http://atariki.krap.pl/index.php/DOS_II/D .

2,768

(60 odpowiedzi, napisanych Fabryka - 8bit)

Ja też poproszę.

2,769

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

Najpierw trzeba swoje odczekać a potem obsługa z SHIFTem i SELECTem o ile pamiętam. Interface tam był naprawdę niecodzienny :)

Edit: Spacją się przechodziło do następnej pozycji w patternie.

2,770

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

Zdaje się, że tylko Automat Perkusyjny wydany przez Avalon miał oryginalnie samplowaną perkusję. Ten z Chaos Software był prekursorem automatu wydanego przez Avalon.
Za to Rythmizer miał perkusję graną POKEYem! Bardzo fajny program.

2,771

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

Automat perkusyjny z Chaos Software z samplami z Digi Drum (tak, jak i produkcja Iron Soft)?

2,772

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

Digi drum?

2,773

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

TTL logika dodatnia - "0" - 0V, "1" - 5V. bit startu to "0", następnie idzie 8 bit danej, potem 1 bit stopu - logiczna "1".

Edit: Dane w kolejności od najmłodszego bitu do najstarszego.

2,774

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

pajero napisał/a:

Mono - jak dostaniesz kompa (pewnie dziś electron go odbiera z poczty - swoje zrobi to odeśle) - to obaczysz QMEGa. Który może przemapować nr napędu dyskietki (swap np. D3 <-> D1, itp).

O ciekawie. Ale chodzi mi o to, jak to będzie wyglądać kiedy boot będzie z nowego urządzenia bez tricków z remapowaniem właśnie.

pajero napisał/a:

Ale dla DOS II/D mamy komendę "JOB namefile". Owe "namefile" trafia do 1.sektora do obszaru 23-63 ($17-$2F). Zawsze domyślnie jest to D1:
Przykład:  D1:JOB MEMTEST.COM  -> zapisze pod $17 "MEMTEST.COM"
Podczas bootowania uruchomi się test pamięci (a z niego ESC wykona powrót do dosu).

Czyli nawet bez sprawdzania zawartości pierwszego sektora dysku można spokojnie założyć, że bootowano z urządzenia, którego numer jest w DUNIT tak, jak to opisywano parę postów wyżej w tym wątku.

pajero napisał/a:

Co do podglądania pod E:
W DOS II/D można dublować linie komend, a co drugą poprzedzać znakiem apostrofu - komentarza, np.
'UNL *.COM
UNL *.COM

Czyli to taki prompt, ale nie o to mi chodziło. Scenariusz jest taki:

Robię sobie program, który będzie ładowany automatycznie przez DOS podczas bootowania (np. jako AUTORUN.SYS). W momencie kiedy DOS przekaże mi sterowanie do tegoż programu chciałbym dowiedzieć się:
1. Z jakiego urządzenia CIO (nazwa i numer) zostałem załadowany i uruchomiony.
2. Z jakiej konkretnie ścieżki odpalony jest program AUTORUN.SYS.
Odpowiedź na 2 nie jest bardzo trudna jeśli jest to AUTORUN.SYS - ładowany z głównego katalogu na dysku. Ale diabeł tkwi w szczegółach :)
Co jeśli użytkownik zechce załadować ten program samemu z linii poleceń (mogę, jak to opisano wyżej, sprawdzić co ostatnio wpisywał w E:; ale co w przypadku kiedy  ładował program jakimś managerem...)?
A jeśli dany DOS nie ma AUTORUN.SYS'a tylko plik wsadowy, w którym mogę wpisać listę programów do uruchomienia?
Wydaje się, że problem sprowadza się więc do tego czy na jakiejś podstawie da się sprawdzić skąd nastąpiło załadowanie mojego programu, który właśnie (tuż po załadowaniu) dostał kontrolę.

pajero napisał/a:

Jeśli masz jakieś uwagi, to pisz. Jestem na etapie przerabiania QMEGa, zaawansowanie już spore.

Bardzo się cieszę - zaraz podeślę Ci jeszcze maila :)

2,775

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

Chciałbym zapytać o inny wariant problemu.
1. Czy jesteśmy w stanie rozpoznać z jakiego urządzenia i ścieżki ładowany jest program AUTORUN.SYS (DOS2x, MyDOS, Sparta, DOS II+/D)?
2. Analogicznie dla dowolnego programu ładowanego z polecenia wsadowego?
3. Czy da się bootować nie z D: a np. z H: (w systemie jest zdaje się przewidziana możliwość bootowania z nowego urządzenia) - co wtedy z rozpoznawaniem urządzenia, z którego automatycznie załadowano program AUTORUN.SYS lub dowolny program z pliku batchowego?
Interesuje mnie automatyczne ładowanie, bo chyba nie można wtedy skorzystać z podglądania E:?