1,376

(58 odpowiedzi, napisanych Bałagan)

@edukacja... mnożenie i dzielenie pewnie będzie później... może w drugim semestrze, ale liczydła już były :) wcześniej działali na tzw. "liczmanach" (nazwa pochodząca ze średniowiecza, ale sądzę że bardzo adekwatna do obecnych czasów).

Ja również nie chciałem posyłać syna do szkoły w wieku lat 6, ale system mnie do tego zmusił. W szkołach nie było miejsc w klasach "zero", musiał iść do "1" bo tylko tam były miejsca... a ja nie byłem "ojcem samotnie wychowującym dziecko", "bezrobotnym", "mającym orzeczenie o niezdolności dziecka do kształcenia w klasie 1". Więc chciał nie chciał, młody musiał iść do pierwszej klasy. W okolicy zaroiło się od "matek samotnie wychowujących dzieci" lub od tych którzy mieli stosowne "orzeczenia"... w tym cyrku i bagnie też nie miałem ochoty się taplać.

@państwo wyznaniowe: no nie chciałem być tak brutalny, po prostu sądziłem że tylko ja postrzegam to w sposób tak negatywny i pesymistyczny. Po prostu sądziłem że jako ateista jestem bardziej wyczulony na pewne sprawy związane z tym w jaki sposób "narzuca" się wiarę najmłodszemu pokoleniu, oraz to co politycy i kościół fundują nam w Polsce. Kościół katolicki już dawno przestał działać według zasad których sam próbuje nauczać i stał się kolejną korporacją dbającą o swoje interesy. A szkoda bo cierpią na tym jak zwykle normalni ludzie.

EDIT:

@LOGO: też miałem taki pomysł, ale mimo tego że był żółw to nie wzbudziło to zainteresowania :) 30 minut skupienia uwagi... i tyle. Natomiat np. Preliminary Monty 16K, Boulder Dash czy patrząc w stronę nowszych platform to Mine-Carft na PC/Tablecie, czy Super Mario Galaxy na Wii wygrały w walce z Logo. Ale o dziwo BASIC spowodował o wiele większe zainteresowanie. Być może to kwestia wieku właśnie.

1,377

(58 odpowiedzi, napisanych Bałagan)

@Adam: a co do równania które zaprezentowałeś... to tak... mają takie :) to się u nich nazywa "zadanie z okienkiem" :) zamiast "X" jest zazwyczaj puste miejsce (otoczone kwadratową ramką), które trzeba uzupełnić. Potem przechodzą do zamiany pustego okienka literką X. Ale to nadal jest dodawanie i odejmowanie oraz trochę logicznego myślenia.

1,378

(58 odpowiedzi, napisanych Bałagan)

@epi: o ja pierniczę... do jakiej szkoły ty chodziłeś? :) ja bym tego w mając 7 lat naprawdę nie ogarnął :D serio mówię.

1,379

(58 odpowiedzi, napisanych Bałagan)

drygol, ależ ja nie nic nie mam do osób wierzących, bo należy rozróżnić wiarę (co jest sprawą osobistą każdego człowieka) od fanatyzmu i fundamentalizmu. Naprawdę nie mam nic do wierzących i ich wiary, to ich sprawa osobista. Uważam tylko że miejsce religii nie jest w szkole, tylko tyle i aż tyle.

Jeżeli jednak jeżeli ktoś zaczyna propagować mowę nienawiści bo ktoś ma odmienne zdanie to robi się bardzo szybko niemiło. Przyznaję że sam nieraz dałem się wyprowadzić z równowagi w takich dyskusjach... co było poważnym błędem z mojej strony, bo bardzo szybko zostałem sprowadzony do poziomu "idioty" z którym rozmawiałem... a potem byłem pokonywany przez jego "doświadczenie", w tego typu dyskusjach :) Osób tego typu na tym forum było kilka, po jakimś czasie po prostu nauczyłem się nie reagować. Bo za każdym razem kończyłem utaplany w brudach, inwektywach i całej tej negatywnej otoczce. To jest forum o Atari , więc po co mi to było? Bo kiedyś sądziłem ze do tego typu osób dotrze że są ludzie którzy myślą inaczej, nie uznają doktryn i wciąż zadają pytania. Ludzie o innym światopoglądzie którzy postrzegają świat inaczej... a wizja narzucania "jedynie słusznej" koncepcji reszcie jest bardzo niewłaściwa... jednak przemyślałem to i doszedłem do wniosku że prowadząc takie dyskusje i wojenki ideologiczne... bardziej szkodzę temu środowisku (ludzi skupionych wokół Atari) i prowokuje to wszystko tylko do większych podziałów i wzajemnej nienawiści...

nauczyłem się ignorować takie przypadki (tak przynajmniej mi się wydaje ;-) ... i z przyjemnością odkryłem wewnętrzny spokój... mam przecież o wiele ważniejsze rzeczy do robienia i o wiele ciekawsze pomysły do realizacji niż prowadzenie jałowych rozmów i dyskusji :)

ps) nie chcę wywoływać kolejnej flame-war, ale jakie GForce-y? :) Żadne CUDA tu nie pomogą, tylko tylko ATI/AMD może Cię uratować i niech w OpenCL Twoja nadzieja spocznie :) (to miał być oczywiście żarcik... hi hi hi ;-)

1,380

(58 odpowiedzi, napisanych Bałagan)

z "rainbow tables" tak łatwo nie będzie :D tak naprawdę to mam nadzieję że eksperyment się nie powiedzie :D

1,381

(58 odpowiedzi, napisanych Bałagan)

eksperyment #1: af99d8c0b2b6fe5f0dbe0699d166c802

1,382

(58 odpowiedzi, napisanych Bałagan)

@epi: no robią różne inne rzeczy, np. mierzą linijką, liczą pieniądze, wykonują proste zadania matematyczne, logiczne. Dowiadują się co to jest gram, milimetr, etc. Ale nie mnożą, nie dzielą i nie rysują kropek w układzie współrzędnych. Młody poszedł do 1-szej klasy jako 6-latek, teraz skończył pierwszy semestr drugiej klasy jako 7-latek, a drugi semestr zacznie jako ośmiolatek. Ale faktem jest że więcej ich uczą języka polskiego... ortografia, gramatyka, dyktanda, czytanie ze zrozumieniem i sprawdziany z treści lektur (np. "Dzieci z Bullerbyn"). I powiem Ci że jako 6-7 latek to ja czas spędzałem na zabawie a nie pisaniu i ślęczeniu nad książkami. Nie dajmy się zwariować, myślę że dzieci potrzebują dzieciństwa również aby prawidłowo się rozwijać a nie programować mózg do nauki jak mały robocik... na wszystko przychodzi czas... szczególnie że widzę jak zmienia się pojmowanie otaczającego świata przez mózg młodego człowieka. Każdy miesiąc przynosi kolosalne zmiany w sposobie myślenia i pozwala zauważać nowe zależności i rozumieć o wiele, wiele więcej.

A co do religii to zgadzam się, to jest jakieś kuriozum... tego w szkole być nie powinno. Bo z tego co się orientuje to nie żyjemy jeszcze w Państwie wyznaniowym i konstytucja gwarantuje mi świecką szkołę i rozdział państwa od kościoła, a jak to się ma w rzeczywistości każdy widzi i ocenić może sam. Jak rodzic jest wierzący i chce wychować dziecko w/g własnej wiary to niech nauczanie religii odbywa się w miejscu do tego przeznaczonym, czyli w okolicach kościoła. I niech taką naukę sponsorują zainteresowani (wierni danego wyznania) a nie podatnicy. Ale wchodzimy na śliski temat i zaraz będzie tutaj niezła chryja... a tego chciałbym uniknąć. Można by pewnie wymienić parę ksyw które zaraz uderzą z krucjatą i będę bronić dobrego imienia kościoła :P

1,383

(58 odpowiedzi, napisanych Bałagan)

Hej!

Młody będzie miał za parę dni 8-lat. Najgorzej było właśnie z sinusami... bo matematyka w szkole to dodawanie, odejmowanie w zakresie do 100 (druga klasa podstawówki).

O ile szybko zrozumiał współrzędne X i Y i w ogóle całą koncepcję układu współrzędnych... to z tymi sinusami i cosinusami było dość ciężko, ale i na to znalazł się sposób... bo skoro już zrozumiał co to układ współrzędnych i biorąc poprawkę na to że do dzieci bardzo przemawiają poruszające się obrazy, to tym razem bardzo pomogło to...

http://i.imgur.com/cBzeLOo.gif

na początku chciałem iść na łatwiznę, bo pomyślałem że odpalę Turbo Basic XL... przecież tam jest "CIRCLE". Ale szybko okazało się że zrobiłem błąd i po prostu włączyłem Atari bez załadowania jakiegokolwiek DOS-a... i młody klepał wszystko w gołym BASIC-u bez możliwości zapisania (no chyba ze na kasecie :P), aby uratować sytuację postanowiłem wykorzystać AspeQT i jego "printer emulation"... ale okazało się że nie działa to to za dobrze i po wydaniu polecenia: LIST "P:", na pececie mam pogubione linie i znaki ;/ .... koniec końców kilka prób LIST "P:" i poskładanie tej sieczki w edytorze tekstowym umożliwiło zachowanie jego pracy, a także zaprezentowanie jej na forum ;-)

Cześć,

Temat kompletnie od czapy... od czasu do czasu syn mój męczy mnie... "Tato.. napiszmy grę"... nie bardzo wiedziałem jak mu uzmysłowić na czym polega pisanie gier, jeżeli nie za bardzo dziecko ma pojęcie o programowaniu... ale dziś wieczorem to się w miarę udało... powstał mini-projekt w Atari BASIC, szumnie nazwany "symulator gry w piłkę"...

"Gra" jest czysto losowa... losuje się po 11 zawodników każdej drużny... potem losuje się piłka... jeżeli piłka znajdzie się w bramce... należy doliczyć punkt odpowiedniej drużynie :) po ocenie sytuacji na boisku, wciskamy klawisz i wszystko zaczyna się od nowa... zabawa trwa do czasu wciśnięcia klawisza "BREAK", "RESET" albo wyłączenia komputera :)

Kod jest wręcz prymitywny, miejscami okropny, nieczytelny i ma błędy (chociażby nierówne bramki :P) ... ale ma jedną zaletę... uzmysłowił młodemu umysłowi ile potrzeba pracy aby postawić parę nieruchomych linii oraz parę kropek na ekranie. Do tego zrozumiał do czego przydaje się matematyka (np. czym jest układ współrzędnych i na czym polega rysowanie okręgu)... do kompletu wszystkie linie programu "wklepał" dzielnie sam, siedząc przy prawdziwym Atari i był bardzo zadowolony z efektu który powstał...

Nie traktujcie tego zbyt poważanie, te moje wywody proszę traktować jako ciekawostkę, piszę to bardziej dlatego aby podzielić się swoimi spostrzeżeniami... może kogoś to jakoś zainspiruje do działania aby obudzić w młodych ludziach jakąś wewnętrzną ciekawość :)

screen z emulatora:

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

i dodatkowo wspominany kod...

10 DEG :GRAPHICS 7+16:COLOR 1:POKE 708,15:POKE 712,194:POKE 709,60
11 REM --- BOISKO ---
12 PLOT 0,0:DRAWTO 159,0:DRAWTO 159,79:DRAWTO 0,79:DRAWTO 0,0:PLOT 80,0:DRAWTO 80,79
13 REM --- RYSUJEMY KOLO ---
14 XE=80:YE=40:R=20:GOSUB 100
15 REM --- BRAMKI ---
16 PLOT 1,20:DRAWTO 10,20:DRAWTO 10,50:DRAWTO 1,50
17 PLOT 159,20:DRAWTO 150,20:DRAWTO 150,50:DRAWTO 159,50
19 REM --- ZAWODNICY ---
20 FOR I=1 TO 11
21 XE=10+RND(0)*140
22 YE=5+RND(0)*70
23 COLOR 2:GOSUB 110
24 XE=10+RND(0)*140
25 YE=5+RND(0)*70
26 COLOR 3:GOSUB 110
27 NEXT I
30 REM --- PILKA ---
31 XE=1+RND(0)*157
32 YE=5+RND(0)*70
50 POKE 764,255
51 COLOR 0:GOSUB 120:COLOR 1:GOSUB 120:IF PEEK(764)=255 THEN 51
54 GOTO 10
99 REM ---- KOLO ----
100 F=0:FOR I=0 TO 360 STEP 30
101 X=SIN(I)*R:Y=COS(I)*R
102 IF F THEN DRAWTO XE+X,YE-Y
103 IF F=0 THEN PLOT XE+X,YE-Y:F=1
104 NEXT I
105 RETURN 
109 REM --- ZAWODNIK ---
110 PLOT XE,YE:PLOT XE-1,YE:PLOT XE+1,YE:PLOT XE,YE-1:PLOT XE,YE+1
111 RETURN 
120 REM --- PILKA ---
121 PLOT XE-1,YE:PLOT XE+1,YE:PLOT XE,YE-1:PLOT XE,YE+1
122 RETURN 

1,385

(32 odpowiedzi, napisanych Fabryka - 8bit)

Hej!

Polutowany, uruchomiony, wmontowany do Atari 130XE i działa bez problemu! :) Dzięki!

http://seban.pigwa.net/drop/clock_patch.jpg

wszystko OK, dopiero przed chwilą Ci odpisałem.

1,387

(140 odpowiedzi, napisanych Programowanie - 8 bit)

Hej!

Ze starych dysków wygrzebałem źródło logo-scrolla zrealizowanego z użyciem bufora pierścieniowego, to też dość stary kod, myślę że to okolice '92 roku, ale sądzę że jest dość czytelny i minimalistyczny (pomijając tą sieczkę związaną z dta c'...')

Fonty użyte w scroll-u pochodzą z tej produkcji "Our5oft's part of UNITY Project". Ponieważ te fonty bardzo mi się spodobały, byłem na tyle bezczelny że "wyciąłem" sobie te fonty i postanowiłem zrobić własny logo scroll na nich bazujący, a następnie wykorzystać to we własnej produkcji, ale o tym na końcu.

Źródła jak zwykle w QA, do oglądania na PC należy użyć np. Memopad o którym pisałem wyżej. Kompiluje się tylko z użyciem QA (jak zwykle dane trzymam w formie dta c'...' / tak, tak... miałem do tego konwerter :P /

1) plik ATR zawierający DOS II+, QA oraz źródła i plik .OBJ dostępne tutaj: scroll.atr
2) źródło do wglądu (format QA, ATASCII, EOL $9B) tutaj: scroll.asm
3) do kompletu jak ktoś na szybko chce sobie to uruchomić pod emulatorem plik XEX tutaj: scroll.xex

Oczywiście ten przykład można skompilować do pamięci i uruchomić bezpośrednio z QA (Run $480, MemHI $a000), Assembly a potem RUN.

Cała procedura scrolla znajduje się od etykiety "scr". Procedura zapisu buforów od etykiety "pupa".

Tablice przechowujące znaki z których składają sie litery logo scrolla t0...t7.

Ponieważ szerokości liter są różne (głownie 4 fonty, tylko "M" i "W" mają szerokość 6 znaków, a także "!" oraz " o szerokości 3 znaków) wyboru szerokości litery dokonuje się bez tablicy, zakładając domyślną szerokość na 4 znaki i potem uwzględniając wyjątki dla M,W,!," ... ten kod widać od etykiety "OK". W kodzie zaszyta jest jeszcze tablica translacji nazwana "tt", dokonująca konwersji znaków w scrollu (dta d' ' / ANTIC codes) na odpowiednie indeksy w tablicach t0..t7


PS) gdyby to kogokolwiek interesowało to jest to jakaś wstępna wersja scrolla pochodzaca, z nigdy nie puszczonego dema zawierającego 256KB samlowanych fragmentów z utworu Another Day in Paradise - Phila Collinsa. Do kompletu dołożone było parę "digitalizowanych" obrazków z teledysku do tego utworu. Demo nigdy nie zostało puszczone ponieważ mało kto w tamtym czasie dysponował takim rozszerzeniem pamięci, i do kompletu z czystego lenistwa (było tworzone jako "concept idea") zostało umieszczone na dysku w formacie 720KB (wymagana stacja TOMS720) ... w takiej formie pozostało porzucone i nigdy nie ujrzało światła dziennego. Na własne uszy słyszał to chyba tylko Miker. Gdy już sensowne stało się wypuszczenie tej produkcji, dysk je zawierający przepadł w odmętach wieczności :P teraz grzebiąc po starych dyskach odnalazłem jakąś pierwszą wersję tego scrolla.

1,388

(25 odpowiedzi, napisanych Programowanie - 8 bit)

pasiu napisał/a:

Odkryłem jednak ciekawą rzecz, bo gdy próbuję wczytać go z innego dysku aniżeli D1:, to po załadowaniu pierwszego bloku ładuje się DUP.SYS wyrzucając błąd 139. Nadmieniam, że transmisja idzie po sio2pc, z którym nie mam problemów.

Pytałem już wcześniej ale nie otrzymałem odpowiedzi, których obszarów pamięci używa kod z INIT-a, czy modyfikuje jakieś komórki na stronie zerowej i jeżeli tak to które?

1,389

(25 odpowiedzi, napisanych Programowanie - 8 bit)

@Draco & Fox: dzięki za oświecenie, faktycznie ma to sens! :) teraz to jasne i logiczne

Fox napisał/a:

edit: ZTCP Atari Macro Assembler nie ciął bloków.

a to przepraszam, mogłem pomylić z EASMD... za dużo tych nazw assemblerów :)

@pasiu: możesz spróbować mojego prymitywnego programu: mem_inf.xex

u mnie to wygląda np. tak:

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

1,390

(25 odpowiedzi, napisanych Programowanie - 8 bit)

nie miałem pojęcia że MAE również tak robi... (za późno odkryłem MAE i byłem zbyt "uwiązany" do QA), ale zawsze się zastanawiałem dlaczego MAC/65 generuje w ten sposób plik wynikowe, ale jakoś nie zdołałem zglebić tematu skąd taki mechanizm i po co. Wydaje mi się że np. Atari Assembler Editor ( Atari Macro Assembler) również generował tego typu nagłówki.

Gdy ja używałem MAC/65 to nie było mowy o flash-packu... czy innych narzędziach o których wspominasz :)
Wczytywałem MAC/65 z kasety w standardzie, lub gdy miałem już Turbo2000 to z kasety w turbo :) Potem gdy udało mi się zostać szczęśliwym posiadaczem stacji dysków do czasu poznania SoTe używałem nadal MAC/65 :)

1,391

(25 odpowiedzi, napisanych Programowanie - 8 bit)

pojęcia o tym nie miałem :) jednak prawdą jest coraz okrutniejszą że człowiek uczy się przez całe życie :) dzięki temu offtopic-owi... dowiedziałem się czegoś nowego :D dzięki! :D

1,392

(25 odpowiedzi, napisanych Programowanie - 8 bit)

Jeszcze jedno mi się przypomniało ... pisałem jeszcze jakieś narzędzia do grzebania w plikach binarnych... część nie mieściła się w na raz w pamięci, więc napisałem coś co się zwało "FILE DIGGER", otwierało toto plik binarny do odczytu... potem analizowało poszczególne segmenty i pytało się co z nimi robić... zapisać na wyjście, olać... zapisać do oddzielnego pliku, etc.  przy pracy z różnymi rzeczami powstała cała masa jakichś pomniejszych narzędzi, linkerów i programów generujących pliki binarne... wszystko to korzystało z możliwości otwarcia wielu plików jednocześnie wraz z odczytywaniem kolejnych wpisów z "directory".

EDIT:

Wcześniej zanim mnie SoTe spacyfikował i mnie przestawił na QA... używałem MAC/65 i on podczas kompilacji potrafił otwierać kilka plików jednocześnie z dysku jak miał dyrektywy include w kodzie. Często robiłem tak że w ramdysku miałem jakieś biblioteki swoje, potem include na początku programu... i miałem większy bufor na swój głowny kod. MAC/65 był i tak nie do pobicia jeżeli chodzi o ilość kodu która mieściła mu się w pamieci... tokenizował to co się pisało... kompilator był ultra-szybki, ale edytor był koszmarny (jak w Atari BASIC)... do tego pliki które generował ... ojć... ich struktura była pomyłką... generował segmenty po 253 bajty...

Przez to musiałem napisać specjalnego tool-a do scalania takiej binarki aby zamiast np. czterdziestu 253-bajtowych segmentów został wygenerowany jeden ciągły :D

ps) Laoo... mega sorry za giga offtopic :)

1,393

(25 odpowiedzi, napisanych Programowanie - 8 bit)

Tu nie chodzi o wydajność DOS-a, tylko o tak jak napisałeś ilość jednocześnie otwartych plików przez CIO. Teoretycznie masz do dyspozycji kanały #1...#7 dla siebie, ale jeżeli masz dwa bufory ustawione w configu DOS-a to po otwarciu 3-ciego kanału dostaniesz ERROR#161 (TOO MANY OPEN DISK FILES).

Gdy dostałem stację dysków, w ROM stacji był MY-DOS, skonfigurowany tak że MEM-LO było poniżej $2000. Więc mi to nie przeszkadzało, jednak gdy pytasz o zastosowanie większej ilości buforów... to owszem korzystałem...

np. dość często używałem tego przy generowaniu różnych tablic i zapisywania ich do plików... np.

OPEN #1,6,0,"D:*.DAT" i czytałem sobie kolejne wpisy i z Directory (INPUT #1,NAME$)

potem:

OPEN #2,4,0,NAME$

następnie operacje typu

OPEN #3,8,0,"D:TABL.BIN"
OPEN #4,8,0,"D:TABH.BIN"

więc 4 bufory to było minimum dla takiej operacji.

Gdy trzeba było przekonwertować  jakąś masę plików z jednego formatu na drugi, (np. arty do Barymaga) to pisało się taki mega konwerter który tylko orał po dysku lub ramdysku generując odpowiednie pliki.

Jak zacząłem się bawić w kompresje danych to generowałem różne pliki wynikowe, np. używając innej metody kodowania bitowego do oznaczenia długości sekwencji i zapisywałem sobie 4 pliki jednocześnie, każdy używający różnych metod kodowania prefixowego.

Gdy liczyłem różne statystyki lub analizowałem sektory na dysku, otwierałem wiele plików i zapisywałem sobie informacje w różnych plikach na ramdysku. No dużo by takich przykładów mnożyć :)

Może nie było to szybkie i wydajne, ale nie miałem wtedy peceta (po prostu nie było mnie na niego stać) i wykorzystywałem to co miałem pod ręką, czyli stację... podręcznik do My-DOS, QA... Turbo BASIC XL, oraz Atari 130XE z 192KB RAM :)

1,394

(25 odpowiedzi, napisanych Programowanie - 8 bit)

1) RTS jak najbardziej OK, to jedyna dopuszczalna metoda wyjścia z INIT-a... mam nadzieję że nie zostawiasz po INIT nic na stosie.

2) $2000 jest jak najbardziej OK...  przy My-DOS (4.53/4) skonfigurowanym z 4-rema buforami... memlo wynosi $1FE8... więc Twój kod ładowany od $2000 jest bezpieczny.

Niech Pasiu sprawdzi jakie ma Mem-LO,   ew. jak jest powyżej $2000 niech wywoła opcję "O" z menu My-DOS, potem RETURN i dalej jak na screen-ie poniżej...

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

po tej operacji Mem-LO powinno wynosić $1DE8.

1,395

(25 odpowiedzi, napisanych Programowanie - 8 bit)

Hej!

Nigdy nie miałem problemów z ładowaniem plików z wielokrotnym init-em pod My-DOS, ale mam dwie uwagi:

1) czy te inity zmieniają zawartość jakichś komórek na stronie zero? nie pamiętam czy dobrze pamiętam... ale MyDOS chyba używał czegoś na stronie zero podczas ładowania pliku binarnego. Być może podczas INIT-a modyfikujesz mu coś z ważnych dla niego komórek pamięci.

2) My-DOS mało kiedy ma mem-lo poniżej $2000, trzeba go odpowiednio skonfigurować... najczęściej jest tak że jeżeli masz dużo buforów skonfigurowanych w DOS... to ten od ładowania pliku wypada gdzieś w okolicach $1Exx, $1Fxx lub nawet $2000

Myślę że z dużym prawdopodobieństwem napotykasz na problem #2

1,396

(140 odpowiedzi, napisanych Programowanie - 8 bit)

Hej!

Nie znałem tej metody, gdy bawiłem się w moje "fly dots", robiłem to metodą dość prymitywną i brutalną... smarowałem wszystko co się dało na ekranie graficznym... czyściłem ekran również metodą "brute force" :P ... pierwsze próby bez żadnych optymalizacji o dziwo "wyrabiały się w ramce", jednak efekt wizualny jaki osiągnąłem nie zachwycał mnie zbytnio... sprawę więc szybko porzuciłem nie mając pomysłu jak to wykorzystać... niby chciałem zrobić  z tego scroll-a... zamieniając po drodze grafikę na "fonty", ale jakoś chęci i motywacji zabrakło... wspominajac to wszystko, zajrzałem nawet do bardzo starych dyskietek z QA, które o dziwo się przeczytały... więc pozwalam sobie załączyć te wypociny... jednak darujcie zanęcanie się nade mną za "jakość" i "szybkość" tego kodu ;-) to naprawdę stary kod (z czasów Code3, czyli wczesne lata '90), do tego wszystkiego jestem prawie pewien że miałem jeszcze ten sam kod właśnie wzbogacony o scrolling (na grafice) zamiast "samych latających kropek", ale nie mogę tego znaleźć... tak czy inaczej można to napisać o wiele efektywniej, nawet wykorzystując ekran graficzny :) więc jeżeli ktoś zechce sobie zrobić z tego oldschool-owy scroll, czemu nie :]

Format QA, z użyciem "dta c' ' oraz Atari control-characters", a więc skompiluje to chyba tylko QA. A może ktoś popełnił konwerter? ;) Do obejrzenia źródeł na PC w formacie ATASCII proponuję użyć: Memopad ( http://joyfulcoder.com/memopad/ )

Tego typu "concept idea" czy inne efekty w tamtych czasach pisałem i testowałem bezpośrednio pod QA, asemblując do pamięci oraz uruchamiając z poziomu QA. W tym wypadku wystarczy zmienić OPT na %00010101 i do tego ustawić "MemHi" na $A000 i RUN na $480. Po czym wykonujemy assembly a następnie RUN... efekt uruchamia się bez problemu bezpośrednio z poziomu QA.

Na koniec pliki o których była mowa wyżej:

1) plik ATR zawierający DOS II+, QA oraz źródła i plik .OBJ dostępne tutaj: fly_dots.atr
2) źródło do wglądu (format QA, ATASCII -> na PeCe użyć MemoPad R9 do podglądu) tutaj: fly_dots.asm
3) do kompletu jak ktoś na szybko chce sobie to uruchomić pod emulatorem plik XEX tutaj: fly_dots.xex

ps1) koncepcja względnej szybkości tego efektu polegała jedynie na tym że de-facto nie tam tam żadnej procedury PLOT, a stawiania pixela odbywa się jedynie przy pomocy jednego STA. Założenie jest takie że zawsze zapalony jest tylko jeden bit w obrębie bajtu i ruch punktu odbywa się jedynie w obrębie tego bajtu, w zależności od wartości zapisywanej na ekran (ustawiony tylko jeden z bitów) zmieniamy pozycję poziomą pixela z zakresie 0..7. Ruch w pionie odbywa sie na podstawie tablic adresów. A rysowanie każdego pixela z osobna polega za zapisywaniu innego bajtu z wykorzystaniem trybu indeksowego sta (adr),y gdzie rej. Y zawiera tak naprawdę nr. bajtu (w tym wypadku również pixela). Całości dopełniają dwie pre-kalkulowane wcześniej (Turbo Basic XL) tablice sinusów, dzięki którym uzyskujemy ciekawy wizualnie kształt poruszania się pixeli. To tak w wielkim uproszczeniu.

ps2) poszukam jeszcze jakichś źródeł logo-scrolla z użyciem ring-buffer. Jak coś sensownego znajdę to zamieszczę również tutaj.

1,397

(140 odpowiedzi, napisanych Programowanie - 8 bit)

mono napisał/a:

Na C64 nie mają wyjścia - ekran zwęża się z 40 do 38 znaków, a my mamy displaylist i obszar 4kB.

VIC ma tyle bug-ów że myślę że nie muszą wcale przepisywać... niektóre tricki zadziwiają...

http://codebase64.org/doku.php?id=base:vic

niby nie mają display-list ale zobacz np. to:

http://youtu.be/2Ui-hEN2HdA

1,398

(140 odpowiedzi, napisanych Programowanie - 8 bit)

Oj... ileż to ja się RAM-u "naprzepisywałem" w początkowej fazie nauki kodowania :D ileż to czasu CPU zmarnowałem na przepisywanie tych ton bajtów we wszelakich logo-scrollach :D dopiero jak poznałem SoTe to bardzo szybko mnie uświadomił że jest inna metoda :D

Moja nauka w tamtych czasach polegała na podglądaniu jak to zrobili inni... uwierz mi... 90% produkcji z logo scroll-ami przepisuje jak tylko może gdy HSCROLL osiągnie wartość końcową :-)

1,399

(140 odpowiedzi, napisanych Programowanie - 8 bit)

Hej!

Prawdę mówiąc sądziłem że ta metoda (bufor pierścieniowy) jest powszechnie stosowana... większość scroll-i w produkcjach Code3 czy Slight jest realizowana tą metodą, nie ma żadnego przepisywania... tylko zapis w dwa miejsca bufora, i zmiana adresu w DL.

Szkoda czasu CPU na przepisywanie ton znaków w pamięci RAM, szczególnie wtedy gdy "logo scroll" jest duży, albo ten czas trzeba poświęcić na coś innego... ( http://a8.fandal.cz/detail.php?files_id=970 ) To jedyna słuszna metoda w/g mnie.

Na ten sposób wykonania scrolla naprowadził mnie kiedyś SoTe, po sprawdzeniu oczywiście okazało się ze to działa doskonale.

Bufory w przypadku naszych scrolli były różne od 128 bajtów do 256 bajtów w zależności od rodzaju scrolla.

1,400

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

Gepard, jeszcze raz dzięki za ten cały stuff! Nie wiem jak przetrwał, ale dzięki za wyłowienie tych wszystkich programów.

ps) w ostatnich linkach brakuje .pl w nazwie domeny