czwartek, 11 lutego 2010

Stara matematyka po nowemu;)

Od kilku dni na Atarionline.pl znajduje się tekst opisujący mój następny program - matematyka z 1989 roku.

Matematyka 1989 by TDC

Matematyka jest pierwszym moim programem edukacyjnym, który zaprojektowałem w celu komercyjnym i zarazem pierwszym ukończonym. Jest to jeden z dwóch moich programów edukacyjnych, które zostały wydane lub mało brakowało (jak w tym wypadku) - nieco więcej w tym miejscu. Napisałem też w szkole podstawowej oraz średniej mniej istotne programy edukacyjne, z których uczyłem się różnych rzeczy, ale nie zamierzam ich publikować (na razie;)

Matematyka 1989 by TDC

Matematyka, jest ciekawym programem, który był w dość oryginalny sposób przemyślany. Po konsultacjach z ludźmi ze sceny wszystko wskazuje na to, że trudno na dowolnej ówczesnej platformie znaleźć podobny. A w komentarzach widać, że został dobrze przyjęty przez programistów sceny Atari, którzy teraz zobaczyli go po raz pierwszy.

Matematyka 1989 by TDC

Na zakończenie garść informacji:

1. Źródła:
    Kod: Tdc
    - procedura w asm (fastprintf 84 bajty): Bzyk;)
    - Action! library (w obecnej wersji)
2. Idea: Tdc oraz Tomasz Mazur

4. Grafika: Tdc + fonty z gry inside

5. Pomoc i wsparcie;) Miker

6. Język programowania: Action! (Wikipedia) + kilka bajtów w asemblerze + procedurka Bzyka

7. Programy narzędziowe: Action!, Atari800Win Plus (dziś), Help me (chyba)

8. Dosy: SuperDos 2,9, w obecnej wersji DOS II/D

9. Inne: program powstał w całości na Atari 800 XL z magnetofonem (!)


Dziś pewnie znajdzie się wielu, którzy nie będą mogli uwierzyć, że jakiś program powstał w całości na magnetofonie !;) a warto podkreślić, że miał on zatrważająca szybkość 600 bodów ;):)


Update:
Początkowo w artykule na Atarionline.pl miało pojawić się znacznie więcej informacji o źródłach programu oraz moich komentarzy programistycznych. Dlatego teraz zamieszczę więcej cytatów z źródła Matematyki, które mają wskazać, jak niezwykle nieczytelny jest to kod:
    PROC ANIM1()ANIM2()[96]PROC ANIM()ANIM2()IF G8=1 THEN[173 $D40B 201 100 208 249]FI ANDU()[96]
    PROC ZE(BYTE Q1,Q2)BYTE Q3 FOR Q3=Q2 TO Q2+2 DO TX(Q1,Q3," ")OD[96]
    PROC KOLU()CARD D4 D4==+1 IF D4< D3 THEN [96]FI D4=0 IF D2=0 THEN D1==+1 FI IF D2=1 THEN D1==-1 FI


    lub

    PROC POZDU()D8==+1 IF GOV=1 THEN DA==+1 FI IF DA=41 THEN DA=100 FI IF D8=42 THEN D8=0 FI D9=PODS(D8)IF D9=1 THEN
    G7==-2 FI IF D9=3 THEN G7==-1 FI IF D9=2 THEN G7==+2 FI IF D9=4 THEN G7==+1 FI[96]
    PROC RLI(BYTE V2,V3)IF V=0 THEN L0(V2,V3)FI IF V=1 THEN L1(V2,V3)FI IF V=2 THEN L2(V2,V3)FI IF V=3 THEN L3(V2,V3)FI
    IF V=4 THEN L4(V2,V3)FI IF V=5 THEN L5(V2,V3)FI IF V=6 THEN L6(V2,V3)FI IF V=7 THEN L7(V2,V3)FI IF V=8 THEN L8(V2,V3)FI
    IF V=9 THEN L9(V2,V3)FI[96]
    PROC LOD()IF LE=5 THEN PO5=50 ELSE PO5=0 FI
    ANIM()A=RAND(100-PO5)V=A/10 RLI(8,5)DZI=1 V=A/1 MOD 10 RLI(11,5)ANIM()PL(14,5)B=RAND(100)V=B/10 RLI(17,5)ANIM()
    V=B/1 MOD 10 RLI(20,5)ANIM()RU(23,5)ZA(27,5)ANIM()[96]
    PROC LOM()IF LE=5 THEN PO5=5 ELSE PO5=0 FI
    ANIM()A=RAND(11-PO5)V=A/10 RLI(8,5)DZI=2 V=A/1 MOD 10 RLI(11,5)ANIM()RA(14,5)B=RAND(11-PO5)V=B/10 RLI(18,5)ANIM()
    V=B/1 MOD 10 RLI(21,5)ANIM()RU(24,5)ZA(27,5)ANIM()[96]
Początkowo gdy próbowałem zrozumieć choć najistotniejsze fragmenty tego kodu (w celu przygotowania wersji gotowej do publikacji), byłem mocno przerażony, to chyba najbardziej nieczytelny program jaki w życiu napisałem;)

Choć trzeba pokreślić, że ten sposób zapisu kodu programu nie wynikał z moich upodobań tylko z tego, że źródło programu było już zbyt długie jak na małą pamięć tego ośmiobitowego komputera (w takim zapisie, więcej się mieściło).


Update:
Wcześniejsze teksty na AtariOnline.pl:

Brak komentarzy:



Jeśli nie jest zaznaczone inaczej (lub nie jest zaznaczone wcale) zamieszczone ilustracje pochodzą z Wikimedia Commons lub są mojego autorstwa.


Ta strona używa cookies oraz innych technologii Google (i innych firm w specjalnych dodatkach po prawej stronie) w celu prawidłowego działania tej stronki (jej elementów jak np. ankiety, reklamy itp.) oraz zbierania statystyk. Korzystanie z tego bloga powoduje zapisywanie typowych plików na Twoje urządzenie (np. komputer, tablet itp.) o ile w ustawieniach przeglądarki nie zmienisz tego.

W UE się ludziom w głowach przewraca, więc dla świętego spokoju zamieściłem to absurdalne ostrzeżenie...