Ready/Run

Takie sobie archiwum listingów ze starych magazynów komputerowych

Listingi w bazie
Dodaj listing
  • Kubuś tańczy break dance

    Pamiętacie tańczącego Kubusia Literkę z pierwszego numeru "Bajtka" z 1986 roku? Dzisiaj wrócimy do tego pomysłu. Tym razem jednak nasz przyjaciel Kubuś będzie wykonywał znacznie bardziej skomplikowane ewolucje.

    Zapewne nie wszyscy wiecie, że Kubuś ma brata bliźniaka — Barnabę, który jest znakomitym tancerzem. Kubuś także postanowił nauczyć się tańczyć. Poprosił więc brata o udzielenie mu kilku lekcji.
    Na ekranie zobaczymy więc Barnabę i Kubusia. Gdy Barnaba wykona jakiś ruch, Kubuś będzie go musiał — najszybciej jak tylko może — powtórzyć. Oczywiście z Waszą pomocą.
     

    Autor listingu: Roman Poznański

    Listing nadesłał: Faust

    Język programu: Locomotive Basic

    Stan listingu:

    4
    Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku
  • Firma

    Zostałeś dyrektorem nowej firmy. Masz do dyspozycji jedną fabrykę i 50 tys. dolarów kapitału zakładowego. Możesz doprowadzić swoją firmę do rozkwitu, jeśli okażesz się dobrym biznesmenem, albo też stracić pracę, gdy spowodujesz bankructwo przedsiębiorstwa.

    Gry towarzyskie takie jak „Bankrut”, „Giełda”, „Tranzyt” itp., polegające na modelowaniu mechanizmów wielkiego biznesu, cieszą się od lat powodzeniem nie tylko w naszym kraju. Z jednej strony pozwalają nam wczuć się w rolę rekinów finansjery, dysponujących milionowymi fortunami, a z drugiej, stanowią znakomite pole do wypróbowania umiejętności strategicznego myślenia.
    Autor programu „Firma” wykorzystał ten pomysł, uzupełnił o własne przemyślenia, i tak w efekcie powstała znakomita gra komputerowa.
    Gra przeznaczona jest w zasadzie dla jednej osoby, która w ciągu 24 miesięcy (oczywiście komputerowe miesiące upływają znacznie szybciej niż w życiu) ma zarobić możliwie najwięcej pieniędzy. Zarabianie pieniędzy wymaga oczywiście inwestycji Trzeba kupować półfabrykaty, które w fabrykach przerabiane są na gotowe wyroby, budować nowe fabryki, płacić za transport. Stosunkowo najmniej zachodu wymaga spekulacja na giełdzie, lecz — z drugiej strony — jest to bardzo niepewny interes.
    Można także wziąć kredyt z banku Należy jednak pamiętać, że po sześciu miesiącach, cały kredyt (wraz z odsetkami) trzeba zwrócić. Jeśli kapitał zakładowy jest niższy niż należna płatność, prowadzi to nieuchronnie do bankructwa.
     

    Autor listingu: Tomasz Nowicki

    Listing nadesłał: Faust

    Język programu: Locomotive Basic

    Stan listingu:

    3
    Listing skorygowany - prawdopodobnie zawiera błędy, uruchamia się na emulatorze lub realnej maszynie, wymaga jednak poprawek kosmetycznych
  • BAJTEK dla COMMODORE 64

    Trudno mi było wybrać lepsza nazwę dla tego programiku zajmującego 38 bajtów pamięci od adresu 680 do 717. Program ten może być pomocny przy wszelkich pracach związanych z operacjami na bitach takimi jak projektowanie własnej czcionki i kroju liter, znaków dla drukarki itp.

    Zadaniem głównym programu jest określenie, które bity są ustawione (włączone) i jaka jest ich wartość dla danej wartości dziesiętnej w zakresie od 0 do 255. W tym celu należy ową wartość wpisać za pomocą POKE do komórki 2 i wykonać SYS 680. Pod spodem ukaże się „czarno na białym” (czyli w rewersie), które z bitów są ustawione (wartości większe od zera), a które są wyłączone (równe 0). Z programu można korzystać zarówno w trybie ekranowym (bezpośrednim) jak też i w trybie programowym. „BAJTEK 64” zawiera w sobie także krótką demonstrację, nie powinno być więc kłopotu z jego wykorzystaniem. Poniżej przedstawiono również procedurę w języku wewnętrznym realizującą opisywaną funkcję. Gdy z jakichś powodów adres 680 ($02A8) nie będzie użytkownikowi odpowiadał, program można przenieść w dowolny obszar pamięci (jest on w pełni relokowalny). „BAJTEK 64” wykorzystuje komórki na stronie zerowej o adresach 2, 251 i 252 ($02, $FB i FC).
     

    Autor listingu: Klaudiusz Dybowski

    Listing nadesłał: Faust

    Język programu: Basic

    Stan listingu:

    4
    Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku
  • DOS+ dla C64

    Nagroda za cierpliwe (i bezbłędne!) wpisanie poniższego programu jest uzyskanie trzech dodatkowych rozkazów bardzo przydatnych wszystkim posiadaczom stacji dysków.

    Pierwszy z nich umożliwia wczytywanie katalogu (directory) dyskietki bez jednoczesnego kasowania zawartości pamięci RAM:
    $ — umożliwia wczytanie całego katalogu, lub
    $ „nazwa 1”, „nazwa 2”,
    co z kolei pozwala nam na wczytanie jedynie określonej grupy tytułów Np.
    * „TER*”, „??FOX
    spowoduje wczytanie wszystkich tytułów których trzy pierwsze znaki stanowią litery TER oraz te tytuły w których znaki trzeci czwarty i piąty są literami FOX Jeżeli użyjemy $ i cudzysłowu /$ „/, to wyświetlona zostanie nazwa dyskietki i ilość wolnych bloków. Wciśnięcie klawisza spacji (odstępu) spowoduje pauzę we wczytywaniu katalogu (wznowienie za pomocą RETURN); Klawisz STOP przerywa wczytywanie na stałe.
     

    Autor listingu: Klaudiusz Dybowski

    Listing nadesłał: Faust

    Język programu: Basic

    Stan listingu:

    4
    Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku
  • Instrukcje SSHAPE I GSHAPE Dla C-128/16/116/+4

    Obie te instrukcje są instrukcjami graficznymi i odnoszą się do grafiki wysokiej rozdzielczości (HIRES). SSHAPE pozwala nam Przypisać zmiennej tekstowej dowolnie wybrany obszar ekranu graficznego natomiast GSHAPE umożliwia jego odtworzenie w określonym miejscu. Obszary o których mowa mają zawsze kształt prostokąta lub kwadratu

    Dla użytkowników takie rozwiązanie jest bardzo wygodne. Przypuśćmy, że chcemy powielić na ekranie w paru miejscach np. obraz jakiejś figury. W wersjach BASIC pozbawionych tych instrukcji trzeba by było w tym celu stworzyć odpowiedni podprogram figurę tą tworzący, a następnie zmieniając odpowiednio parametry kolejno go wywoływać co jest oczywiście powiązane z wolniejszym wykonywaniem programu i większą zajętością pamięci (...) przedstawiam mały program demonstracyjny, pokazujący w jaki sposób można korzystać z opisanych w artykule instrukcji. Linia 120 powoduje skasowanie i wyczyszczenie pamięci ekranu graficznego. Następnie (linia 125) w lewym rogu ekranu wykreślane jest małe kółko, które zostaje przypisane zmiennej A$ (linia 130). SCNCLR w linii 140 powoduje ponowne wyczyszczenie ekranu i odtworzenie uprzednio zapamiętanego pod zmienną A$ obrazu kółka. Stosując pętle otrzymujemy w rezultacie na ekranie szereg kółek.

    Autor listingu: Klaudiusz Dybowski

    Listing nadesłał: Faust

    Język programu: Commodore Basic 3.5

    Stan listingu:

    4
    Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku
  • CHAR, RDOT czyli tekst i grafika

    Żalił mi sie ostatnio pewien mój znajomy, że ma kłopoty z wyświetleniem na ekranie wysokiej rozdzielczości wyników obliczeń wraz z wykresem funkcji. Oprócz tego kilku Czytelników miało również wątpliwości jak należy stosować instrukcje CHAR i funkcję RDOT w wyniku czego powstał poniższy program.

    Ponieważ ma on charakter demonstracyjny i składa się z dwóch części proponowałbym przed uruchomieniem postarać się o szklankę herbaty; druga bowiem część tego programu wykonuje się przez ok. 28 minut, ale za to otrzymujemy przepiękny trójwymiarowy wykres funkcji. Program można uruchomić na Commodore 128, 16, 116 i PLUS/4.
     

    Autor listingu: Klaudiusz Dybowski

    Listing nadesłał: Faust

    Język programu: Commodore Basic 3.5

    Stan listingu:

    4
    Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku
  • Generator Rytmów

    Przypuszczam, że wielu początkujących muzyków czy też muzykantów ma pewne kłopoty z utrzymaniem rytmu. Sądzę tak, ponieważ sam jestem (i zapewne już zostanę) takim właśnie muzykantem. A do tego dźwięk przedstawionej tu „elektronicznej perkusji” jest ciekawszy, bardziej inspirujący niż tupanie noga, czy suchy stukot metronomu.

    Dla zapisu rytmów dysponujemy polem o szerokości 39 kolumn i wysokości 2 wierszy. Początek pola wskazuje znak „?”. Tam też pojawia się kursor. Każdy wiersz określa rytm jednego bębenka. Górny wiersz — małego, dolny — większego. Cyfry widoczne nad polem rytmów to numery kolumn. Numery są dwucyfrowe — czytamy je z góry w dół. Poszczególne kolumny definiują kolejne elementarne jednostki czasu, w których może zabrzmieć dźwięk. Programowanie generatora polega na umieszczeniu w polu rytmów znaczków wskazujących, kiedy dany bębenek ma grać. Mogą być użyte dowolne znaki z wyjątkiem „Q”, „ ” i „I”. Spacja definiuje bowiem ciszę, pauzę czyli brak dźwięku, pionowa kreska zaś (klawisze <SHIFT> i < = >) użyta w zapisie górnego bębenka oznacza koniec cyklu, to znaczy, że jako następna będzie interpretowana kolumna nr 1. Jeśli nie użyjemy takiej kreski, to cykl będzie trwał całe 39 jednostek. Po wpisaniu rytmu naciskamy RETURN i perkusja gra. Powtórne naciśnięcie RETURN — i cisza. Można poprawić zapis, itd. Aby opuścić program należy tuż za pytajnikiem wprowadzić <Q> (quit). Zwracam uwagę, że każdy kulturalny program powinien kończyć się w kontrolowany sposób, a nie tylko przez BREAK czy też wyciągnięcie wtyczki z kontaktu.
    Kilka słów na temat programu. To mocna strona komputerów ATARI, że z ich nieprzebranego bogactwa dźwięków można korzystać tak prosto! Tu konwencjonalna pętelka cichnącego szumu w liniach 260..290 doskonale spełnia swe zadanie. Szumy są dwa: cieńszy (linia 270) i grubszy (linia 280). Głośność dźwięku w każdym momencie jest mnożona przez 0, jeśli kolejne miejsce na ekranie jest puste, zaś przez 1 w przeciwnym wypadku Wyrażenie logiczne bowiem, a takim jest np. (PEEK (EKR + I)>0), przyjmuje zgodnie z konwencją Atari BASIC-a jedną z dwu wartości: 1 (prawda) lub 0 (fałsz). Prostota i szybkość tego sposobu zasadza się na bezpośrednim spoglądaniu w pamięć ekranu. Zmienna CS ma tu znaczenie uboczne, a sama instrukcja INPUT służy tylko do zatrzymania programu, gdy trzeba dokonać zmian. Przed podjęciem nowego rytmu bada w liniach 210..230, czy wprowadzono ograniczenie długości cyklu i stosownie do tego ustala N.
    Wyjaśnienie niektórych PEEK'ów i POKE'ów. Komórka 82 (linie 100 i 300) ustala lewy margines ekranu. W komórkach 88 i 89 (linia 130) znajduje się dwubajtowy adres pamięci ekranu. Zmienna EKR będzie więc wskazywać na nasze pole rytmów Pod adresem 752 można (w linii 180) zgodzić się, by kursor przebywał na ekranie, lub (w następnej) zabronić mu tego. W komórce 764 (linie 170, 240) jest kod ostatnio naciśniętego klawisza, lub — gdy niczego się nie naciska — liczba 255.

    Autor listingu: Janusz B.Wiśniewski

    Listing nadesłał: Faust

    Język programu: Atari Basic

    Stan listingu:

    4
    Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku
Dodaj listing
Powrót do spisu

Dodaj plik z listingiem *

    Jeżeli posiadasz plik wykonywalny i źródłowy spakuj je w jedno archiwum. Wielkość pliku nie może przekroczyć 2mb. Wszystkie pozostałe pola są niewymagane, jednak ułatwiłoby dużo, gdybyś podał przynajmniej orientacyjnie skąd jest listing, a jeżeli jest Twojego autorstwa pozostaw namiar.

    Nazwa programu:

    Nazwa programu lub nazwa artykułu, z którego pochodzi.

    Stan listingu

    Jak oceniasz stan przesłanego listingu, jeśli jego działanie wymaga dodatkowego wyjaśnienia dodaj go w opisie.

    Opis programu:

    Opis działania programu. Zauważone problemy w funkcjonowaniu. Dodatkowe informacje.

    Autor listingu

    Autor artykułu/listingu zamieszczanego pliku. W razie wielu autorów odzielaj ich przecinkami

    Platforma

    Mikrokomputer, na który pochodzi listing. Jeśli danej platformy nie ma w spisie wprowadź jej nazwę w pole poniżej.

    Język listingu

    Język listingu, np. TurboBasic, BasicXL, MSBasic itp.

    Źródło

    Jeśli program jest Twojego autorstwa pozostaw puste.

    Twój nick

    Twój nick, ewentualnie dane osoby, która program wklepała, w razie wielu autorów odzielaj ich przecinkami.

    Email

    Do celów edycyjnych, informacyjnych i kontaktowych - bez podawania go jawnie.