atarionline.pl STARY DOM - Bajtek 4/87 - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1: CommentAuthorPaladina
      • CommentTime23 Jun 2009 18:06
       
      Please HELP, can anybody send me in LST, BAS or ATR Game "STARY DOM" from Bajtek 4/87 ? I cannot rewrite it because there is very bad visibility of this Basic game. mail: Paladina@atlas.cz

      Thanks and Poland is the best for ATARI :D
      • 2:
         
        CommentAuthorKaz
      • CommentTime23 Jun 2009 19:06 zmieniony
       
      Paladina - nice to see you on the forum, you are very welcome.

      I look at our scan of mentioned Bajtek and it doesn't have perfect quilty for OCR too... :(
      • 3: CommentAuthorirwin
      • CommentTime23 Jun 2009 19:06
       
      look here:
      ->link<-
      and ask Pavros - he has this game in *.BAS
      • 4: CommentAuthorPaladina
      • CommentTime23 Jun 2009 19:06
       
      Yeah, I have programmed it, but I think there are many error, that the game do not go right. You can test or make it right :D And I cannot polish, then :D See who can repair this game :D
      • 5: CommentAuthorPaladina
      • CommentTime23 Jun 2009 19:06
       
      to IRWIN please can you write letter to Pavros? Iam not good in Polis lang. The send or give there the game please :D Thx
      • 6:
         
        CommentAuthorKaz
      • CommentTime23 Jun 2009 19:06
       
      Paladina - message to Pavros has been sent. I would like to get this game for my collection too.
      • 7: CommentAuthorPaladina
      • CommentTime23 Jun 2009 19:06
       
      Yeah Kaz, then when I have it I will programmed it to english :D mayby then comm STARY DOM II :D Dont Forget to send me this gama: PALADINA@ATLAS.CZ thx
      • 8: CommentAuthorirwin
      • CommentTime23 Jun 2009 19:06
       
      Paladina - message to Pavros has been sent... x2 ;)
      (and to Mormon - which also has this game)

      Kaz byłeś szybszy ;)
      • 9: CommentAuthorPaladina
      • CommentTime23 Jun 2009 19:06
       
      Supr, many thansk Kaz and Irwin, question who is adinistrator of this Atari.online.pl? In future i mayby can send any good thinks, ah..and I am from Czech Republic, you know the names as Rastr or JRC? It was first Turbo from JRC for Atari ane Rastr help me with SDrive, it much easy as SIO2SD :D John the Paladina.
      • 10:
         
        CommentAuthorKaz
      • CommentTime23 Jun 2009 20:06
       
      First: atarionline.pl not atari.online.pl (without dot between atari and online) :)

      Second: you can publish stuff on the forum. If it's something special (needs article for example) send it to me: kaz at online dot pl.
      • 11: CommentAuthorpavros
      • CommentTime23 Jun 2009 21:06
       
      The file has been sent to Paladina and Kaz.
      • 12:
         
        CommentAuthorMaW
      • CommentTime23 Jun 2009 22:06
       
      Kiedyś marzyłem o tym, żeby tej grze dodać grafikę taką jak w Ghost Chaser :-)
      • 13:
         
        CommentAuthorDracon
      • CommentTime23 Jun 2009 23:06
       
      Giera, zamieszczona byla w BAJTKU '86 lub '87. Pamietam, ze probowalem wpisac listing calej tej gierki, ale to byla mordega i dalem sobie spokoj.

      Podobno Zientara nie wymyslil sam "STAREGO DOMU", tylko spolszczyl i ew. lekko przerobil udostepniona gdzies publicznie wersje angielska (lub niemiecka) programy. Tylko, ze o tym nie wspominial przy okazji. ;P
      • 14:
         
        CommentAuthorKaz
      • CommentTime23 Jun 2009 23:06
       
      1. Pavros - na razie nie dotarl do mnie zaden mail od Ciebie.

      2. Dracon - wtedy wlasnie zaczela sie w Polsce era informacji (kto mial dostep do informacji, ksiazek, programow, filmow z Zachodu - ten rzadzil) ;)
      • 15:
         
        CommentAuthorKaz
      • CommentTime24 Jun 2009 10:06
       
      Pavros - teraz mail dotarl. Dzieki za pliczek.

      Plik BAS wrzucilem takze na dyskietke i zrobilem wersje samouruchamialna:

      ->link<-
      • 16:
         
        CommentAuthorlarek
      • CommentTime24 Jun 2009 10:06
       
      A jak się poruszać w tej grze? Obojętnie co nacisnę: D,G,L,P to wyświetla się: tu jest mur, uderzyłeś się w nos, tu nie przejdziesz - czy jakoś tak ;-)
      • 17:
         
        CommentAuthorWolfen
      • CommentTime24 Jun 2009 11:06
       
      @Larek : musisz wydac komende "Drunken mode off" :D (zartuje ;) serio to jeszcze nie sprawdzalem :)
      • 18: CommentAuthorastrofor
      • CommentTime16 Nov 2019 16:11
       
      Bajtek Bajtek 4/87:
      "Polecam grę stary dom, jako idealne remedium na kaca."
      • 19: CommentAuthorgorgh
      • CommentTime16 Nov 2019 19:11
       
      • 20: CommentAuthormono
      • CommentTime16 Nov 2019 20:11
       
      @astrofor: Taki młody a twarz już sugeruje chorobę filipińską... Co za świat.
      • 21:
         
        CommentAuthorCOR/ira4
      • CommentTime16 Nov 2019 20:11
       
      @mono
      ... co to za choroba ?
      ja to miałem ?
      • 22: CommentAuthorzbyti
      • CommentTime17 Nov 2019 00:11 zmieniony
       
      Te przenosiny na start są wkurzające ;) Już 4 czy 5 raz podczas tej rozgrywki mnie przerzuciło na początek.

      No i jeszcze ze 2x :D

      Ale pomysł na grę świetny, jakby go dopracować to była by dziś supr casualowa gierka :)

      EDIT 1: no nie... to są jaja ;(

      EDIT 2: a teraz czekaj do świętego Dygdy aż się młotek wylosuje albo powrót na start ;) qrde...

      EDIT 3: jeszcze raz mnie przeniesie to się poddam...

      EDIT 4: zmieniam zdanie... ta gra jest pierd...ta

      EDIT 5: nareszcie... ;) grałem bez save state-ów ale to tylko dla cierpliwych...

      Ogólnie pomysł b. dobry. Minusy to zbyt częsta możliwość wylosowania przeniesienia na start i czasem zby długie oczekiwanie na przedmiot jak nas gdzieś "zamuruje". No i od któregoś momentu gra przestaje być wyzwaniem bo jesteśmy tak dopakowani a trzos pęka w szwach, że żaden potwór nam nie straszny. Walczymy tylko z losowymi powrotami na start i brakiem potrzebnego przedmiotu gdy nie mamy ruchu a te niszczeją i próba zachowania sobie czegoś na "zaś" nie zawsze się udaje.

      Pan Przemek który dokonał modyfikacji tej gry mógłby zmienić losowanie powrotu na start by było w stosunku 1 do 100 bo teraz to jest 1 do 20 ;) jak nie mniej.
      • 23:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 10:11
       
      Pan Przemek który dokonał modyfikacji tej gry mógłby zmienić losowanie powrotu na start by było w stosunku 1 do 100 bo teraz to jest 1 do 20 ;) jak nie mniej.


      mniej, mniej. 1 na 15 :D

      wczoraj z ciekawości zabrałem się za konwersje z basica na MadPascal, mam już jakieś 90% - chyba dziś skończę :D
      • 24: CommentAuthorzbyti
      • CommentTime17 Nov 2019 10:11 zmieniony
       
      @bocianu O! To Rewelacja :)

      Jeżeli nie robisz 1:1 to miał bym takie propozycje zmiany:

      Przenosiny na start nie są losowane jako zdarzanie na turę tylko są Teleportami na planszy i po odkryciu są oznaczone na planszy tak jak C i P, np. literą T i omijamy jak nie chcemy wrócić na start. Oczywiście oznaczany dopiero po wpadnięciu w niego, za pierwszy razem nas przenosi ;) Takich miejsc na planszy powinno być: 5% liczby pokoi.

      Teleport też mógłby być przedmiotem i wtedy w sytuacjach bez wyjścia mógłby się losować z jakąś kategorią potwora (lub najlepiej 3, np. Czarownik, Elf i Smok). Jak go pokonamy lub się wykupimy to on nam go zostawia jak nie to on nas pokonuje i giniemy, śmierć i koniec gry.

      Bo teraz w zależności co nas zamurowało musi się wylosować odpowiedni przedmiot a to wydłuża czas oczekiwania bo zmniejsza nasze szanse ze względu na liczbę kombinacji. Wciąż w takiej sytuacji losowanie przedmiotu może zostać ale jak zostaniemy "przyparci do muru" jak bokser w narożniku to powinien się najdalej w 4 turze (od momentu zamurowania) pojawić np. Czarownik. Jak do tej pory nie pojawił nam się kaganek, młotek, klucz czy deska by się wydostać to musisz pokonać czarownika lub się wykupić i za pomocą teleportu wrócić na start inaczej The End.

      Z tego powodu złoto i diamenty, też się powinny losować (rzadziej ale jednak). Teraz można nie móc walczyć, nie mieć czym się wykupić a i tak się nie ginie tylko czeka naa łubki i bandaże etc.

      Słownik haseł do podania strażnikowi też mógłby być bogatszy, bo ja spotkałem tylko 2: bicz i klan. A najlepiej gdyby hasło pojawiało się losowo tak jak teraz jako prosta zagadka a tylko w jednym miejscu (góra dwóch miejscach) na planszy w postaci jawnej. Wtedy albo ktoś odgadnie hasło albo odbije się od strażnika i będzie musiał przeszperać Stary Dom by znaleźć pokój z hasłem w postaci jawnej.

      Sądzę, że to uprzyjemni rozgrywkę.

      No i tak jak ktoś napisał w komentarzach, informacja o przejściu przez otwarte drzwi jak jest mapa niepotrzebnie zużywa enter.
      • 25:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 11:11
       
      na razie robię translacje 1:1.

      Potem uporządkuje kod na bardziej proceduralny, ponazywam po ludzku zmienne, i dopiero wtedy będziemy mogli się bawić w modyfikacje :D
      • 26:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 11:11
       
      A z ciekawostek, to przy przepisywaniu znalazłem chyba błąd.
      Nie wiem czy to zamierzona przez autora funkcjonalność, ale ZAWSZE jak znajdziemy jakiś przedmiot i zrezygnujemy z jego podniesienia, natychmiast znajdujemy zamiast niego jakąś broń. :)
      • 27: CommentAuthorzbyti
      • CommentTime17 Nov 2019 11:11 zmieniony
       
      @bocianu to jak zrobisz ładny kod w MP tej gry to może także spełni swoją rolę edukacyjną tak jak pierwowzorów?

      Ja oczywiście jak udostępnisz źródła a nie będziesz miał ochoty wprowadzić w/w zmian to skorzystam z Twojej pracy i sam je zrobię :)

      Pomysł na grę naprawdę fajny ale detale skopane :) Walczyłem z sobą wczoraj po nastym przeniesieniu na start by olać tę grę ;)

      Po za tym jak to już będzie w MP to można by zmiksować to z koncepcją Dreszcza i dopiero będzie wypas :D
      • 28:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 12:11 zmieniony
       
      No z tym "ładnym kodem" to różnie może być :) ale postaram się.

      Ogólnie cała ta translacja zajęła mi więcej czasu niż szacowałem, ale postanowiłem przepisać to PRZYZWOICIE, czyli bez użycia rozkazu GOTO, który w oryginale występuje ponad 60 razy.

      Nie jest to wcale proste :D muszę generować jakieś sztuczne pętle warunkowe i dodawać coś na wzór maszyny stanów. Ale zasuwa to o niebo szybciej niż basic.

      Tu już wersja PRAWIE gotowa - nie obsługuje jeszcze tylko obsługi wyjścia (podawanie hasła i sprawdzanie kasy).
      • 29: CommentAuthorzbyti
      • CommentTime17 Nov 2019 12:11 zmieniony
       
      @bocianu Genialnie! To już sobie z ciekawości odpalam! :D

      EDIT 1: śmiga jak burza! Ale działa trochę inaczej niż oryginał - takie mam wrażenie przy parametrach potworów które spotykam. Pewnie to tylko wrażenie ;)
      • 30: CommentAuthormono
      • CommentTime17 Nov 2019 12:11
       
      A gdzie jest
      program starydom;
      ? :D
      • 31: CommentAuthorzbyti
      • CommentTime17 Nov 2019 12:11 zmieniony
       
      @bocianu jakich czcionek użyć by się tego pozbyć?

      Czy to są kody tego nowego zestawu? Jak to się obsługuje? ;)
      • 32:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 12:11 zmieniony
       
      Pozbędę się tego jak będę czyścił.
      To tak na razie z lenistwa wrzucone :)

      mono: przepraszam :D poprawie się
      • 33: CommentAuthorzbyti
      • CommentTime17 Nov 2019 12:11 zmieniony
       
      @boicanu nie, to jednak nie jest wrażenie, jest prościej, potwory słabsze. Losuje się mniej bzdur ale przez to jest o wiele łatwiej.

      Siła też szybciej schodzi niż w oryginale.

      Zobacz moją rozgrywkę w oryginał (screeny) a teraz gdzie jestem w Twojej wersji.

      W Twoją wersję gra mi się lepiej, ale jednak ciut za łatwo ;) Albo miałem takie szczęście do generatora liczb pseudo ;)
      • 34: CommentAuthorzbyti
      • CommentTime17 Nov 2019 12:11 zmieniony
       
      No i przeszedłem ;) Albo sobie ułatwiłeś na potrzeby pracy rozgrywkę (ale to wtedy dlaczego siła tak szybko schodzi?) albo to na pewno nie jest na ten moment 1:1 Jest sporo łatwiej, ale też mniej frustrująco ;)

      Jeszcze jedno. W wersji basic-owej przed wyjściem zawsze musiał pójść w ruch młotek albo klucz, tutaj wyjście jest "otwarte".

      Działa ogólnie znakomicie, jak skończysz to będzie znacznie poprawiony komfort gry w stosunku do oryginału!
      • 35:
         
        CommentAuthorxeen
      • CommentTime17 Nov 2019 13:11
       
      bardzo dziękuję za tę wersję
      • 36: CommentAuthorzbyti
      • CommentTime17 Nov 2019 13:11
       
      Po czym poznać, że polityk kłamie? Po tym, że otwiera usta ;P
      • 37:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 13:11
       
      xeen: to jeszcze niedokończone, ale niebawem będzie :)

      zbyti: teoretyczne to mechanika i losowanie są przeniesione 1:1, więc nie powinno być różnic. Ale mogłem się po prostu gdzieś pomylić.
      Będę to jescze sprawdzał przy porządkowaniu kodu.
      • 38: CommentAuthorzbyti
      • CommentTime17 Nov 2019 13:11 zmieniony
       
      @bocianu cieszę, się, że się za to wziąłeś to będzie fajna gra do grania i rewelacyjny kod do studiowania :D

      Myliłem się co do wyjścia, nie zawsze ostatni pokój jest zamknięty.

      A co do reszty jeszcze raz sprawdzę oryginał. Wrażenie, że inaczej się losuje w wersji MP mnie nie opuszcza.
      • 39: CommentAuthorzbyti
      • CommentTime17 Nov 2019 14:11 zmieniony
       
      OK, potwierdzam. Twoja @bocianu gra działa zdecydowanie inaczej. Rozegrałem jeszcze raz partię w wersję oryginalną ale po 10 razie jak mnie przerzuciło na start odpuściłem. Jenak zobacz jak wygląda po tym czasie mapa. Do tego potwory z wyższymi parametrami się losują, mniej siła schodzi. Ewidentnie coś liczysz inaczej w swojej wersji.

      Gdyby nie te rzucanie na start co chwilę w wersji basicowej to była by całkiem udana gra, przy przenoszeniu na MP 1:1 nie ma sensu tego tak zostawiać, podbij proszę ten parametr ;)
      • 40: CommentAuthorastrofor
      • CommentTime17 Nov 2019 14:11
       
      apropos mad pascala i starego domu, czyli gry którą niezaawansowani w arkana (asembler) atari programisci chętnie by przerabiali i rozwijali. (W kodzie prawie nie ma assemblera ;) Fajnym narzędziem byłaby mapa zasobów pozostałej pamięci atari na podstawie analizy kodu. W sensie na podstawie kodu pascala - może alternatywa dla kompilatora na podstawie wyrażeń regularnych, sprawdzac wszystkie deklaracje zmiennych i na ich podstawie pokazywac ile jeszcze zostało zasobów. Jak się domyślam wcale nie jest to proste, bo pewnie w wiekszosci programow mozna rezerwowac i zwalniac pamiec w runtime, ale może coś by się dało ?
      • 41:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 15:11
       
      Astrofor. Ale do tego nie potrzebujesz żadnego dodatkowego narzędzia. Przy kompilacji dostajesz dokładne informacje o rozmiarze i lokalizacji poszczególnych bloków kodu, bibliotek, zmiennych itp...
      • 42: CommentAuthorzbyti
      • CommentTime17 Nov 2019 15:11
       
      @atrofor przykład tego o czym pisze @bocianu masz tutaj ->link<-
      • 43:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 19:11 zmieniony
       
      OK, potwierdzam. Twoja @bocianu gra działa zdecydowanie inaczej.


      To podyskutujmy o technikaliach i rachunku prawdopodobieństwa :D

      czy Waszym zdaniem taki warunek w basicu:
      RND(0)>0.4

      jest tożsamy (jeżeli chodzi o rozkład prawdopodobnieństwa) z Mad-Pascalowym:
      Random(10)>4
      • 44: CommentAuthorzbyti
      • CommentTime17 Nov 2019 19:11 zmieniony
       
      A czy w obu przypadkach jest wywoływana ta sama procedura systemowa?

      Jak puścisz pełną wersję to sprawdzę jeszcze raz swoje iluzje ale na ten moment zupełnie inaczej się gra w Twoją wersją a inaczej w basicową - nie mów, że nie sprawdzałeś ;)

      No logikę oba przykłady dadzą to samo. Błąd musi być gdzie indziej.
      • 45:
         
        CommentAuthorbocianu
      • CommentTime17 Nov 2019 19:11 zmieniony
       
      Przypuszczam że procedura nie jest ta sama, ale nie wiem tego :)
      Wydaje mi się jednak, że rozkład prawdopodobieństwa powinien być taki sam. Ale pewności nie mam :D

      Sprawdzałem i tez mam wrażenie jakieś, ze moja wersja jest nieco łatwiejsza. Ale nie jestem w stanie wprost wskazać różnic, a tym bardziej znaleźć ich w kodzie.
      • 46: CommentAuthorzbyti
      • CommentTime17 Nov 2019 20:11 zmieniony
       
      Ja jestem w stanie wskazać różnice ;)

      1. rzadziej losuje cię ciemnia lub podłoga
      2. potwory losują się słabsze
      3. ruch zabiera więcej siły

      Jeszcze raz zobacz na zrzutach ekranu, u Ciebie przeszedłem pół planszy i miałem parę niespodzianek i raz mnie cofnęło na start.

      W basicowej praktycznie prawie co pokój jakaś przeszkadzajka i trudno się wydostać za połowę ekranu by nie było tego gęsto, do tego przy okazji z 5x cię cofnie na start ;)

      Reasumując u Ciebie, rzadziej się losują takie sprawy, trudniej zrobić progres i bardzo rzadko trafi się potwór z silą powyżej 11. etc.

      Jak puścisz pełna wersję to puść też kod basica w txt to może dołączę do poszukiwań.

      Zobacz ile miałem kasy i siły jak kończyłem basicową wersję, a przecież nie bawiłem się w farming tylko to co konieczne, u Ciebie przeszedłem do wyjścia prawie nie robiąc progressu.
      • 47: CommentAuthorzbyti
      • CommentTime17 Nov 2019 20:11 zmieniony
       
      10 ? RND(0)
      20 GOTO 10

      Wynik w załączniku.

      Ile razy masz szansę wyrzucić liczbę ~0.4 w basicu a ile 4 w przypadku MP? ;)

      Nie wiem jak działa ten generator, jeżeli pod spodem dla BASIC i MP wykonuje się ta sama procedura systemowa Atari to nie powinno być problemu.

      -----------------------------------------------------------
      EDIT:

      MP robi coś takiego:
      ;BYTE FUNC Rand(BYTE range)
      ; returns random number between 0 and
      ; range-1. If range=0, then a random
      ; number between 0 and 255 is returned

      ldy $d20a ; RANDOM

      lda range
      beq stop

      sta ecx
      sty eax

      jsr imulCL
      tay

      stop sty Result


      No tak, ale argument z rozkładem prawdopodobieństwa jest dobry ;) Ale czy to nie są liczby pseudolosowe? :D

      Wydaje się, że błąd musi być gdzie indziej. Przejrzę kod który udostępniłeś, ale to jakby ślepy szukał igły, może coś namacam ;)

      Dobra, nie wiem to się nie odzywam ;)
      • 48: CommentAuthorastrofor
      • CommentTime17 Nov 2019 20:11
       
      nawet jak randomy w basicu i mad pascalu dzilaja nieco inaczej np, przez szybkosc wykonywania programu, to nie powinno miec to wplywu na dzialanie progrmu, a napewno nie az takiego zeby mialo to wplyw na przejscie gry. Nie sadze aby byl gdzies bug, bo jest to tak powszechna funkcja ze, bylby juz wielokrotnie wczesniej wykryty.
      Ja tu widzę inny problem. W latach 80tych to mogl sobie być bohater. Ale obecnie raz powinien być bohater a raz bohaterka, albo bohateżyca. Pytanie czy to jest konwersja (wtedy pewnie moze zostac bohater) , czy nowa wersja.

      np :
      a := random(1) ; if a = 0 then writeln('ZNALAZ'#12'A'#9' ', Btab[a-1]);
      else writeln('ZNALAZ'#12'AE#9' ', Btab[a-1]);

      Polecam tez spieszyc sie ze skonczeniem kodu, bo chodzą słuchy po mieście że niedługo w dokumentach należy uwzględniać też osoby transpłuciowe i transseksualne. A jak wtedy nazwać naszego bohatera ? bohateroterka ?
      • 49: CommentAuthorzbyti
      • CommentTime17 Nov 2019 21:11 zmieniony
       
      Tutaj musi być jakaś magia:
      if isIn then begin  // check room
      l := locate(x + 2 * zx, y + 2 * zy);
      if l=32 then begin
      q := random(2);
      if (a = 0) and (x > 8) and (y > 4) and (random(10) > 4) then begin
      if q = 0 then l := 195
      else l := 208;
      end else begin
      a := random(6);
      if a = 0 then begin
      if q = 0 then l := 195
      else l := 208;
      end;
      end;
      end;

      if l=195 then begin
      position(x + 2 * zx, y + 2 * zy);
      write('C'*);
      position(2,22);
      writeln('W POKOJU JEST CIEMNO,');
      if hasItem('G') then begin
      write(tTab[1], 'KAGANEK.');
      isIn := true;
      end else begin
      write(tTab[2], 'KAGANKA.');
      isIn := false;
      end;
      readkey;
      clearLine;
      end;
      if l=208 then begin
      position(x + 2 * zx, y + 2 * zy);
      write('P'*);
      position(2,22);
      writeln('W POKOJU NIE MA POD'#12'OGI,');
      if hasItem('D') then begin
      write(tTab[1], 'DESK'#11'.');
      isIn := true;
      end else begin
      write(tTab[2], 'DESKI.');
      isIn := false;
      end;
      readkey;
      clearLine;
      end;
      if l=214 then begin
      // wyjscie

      end;

      if isIn then begin
      e := e - 0.5;
      end;


      end;

      że tak rzadko w praktyce wpada się w te if-y w stosunku do wersji basic-owej.
      • 50: CommentAuthormono
      • CommentTime17 Nov 2019 21:11 zmieniony
       
      Spójrzmy do Zientary:
      0100 ;eXecute RND function
      0110 ;
      0120 BDIV = $AD38
      0130 FLD1R = $DD98
      0140 FR0 = $D4
      0150 GETVAR = $ABE9
      0160 IFP = $D9AA
      0170 PUTVAR = $ABB2
      0180 RANDOM = $D20A
      0190 ;
      0200 *= $B076
      0210 ;
      0220 LDX # <RNDC
      0230 LDY # >RNDC
      0240 JSR FLD1R
      0250 JSR GETVAR
      0260 LDY RANDOM
      0270 STY FR0
      0280 LDY RANDOM
      0290 STY FR0+1
      0300 JSR IFP
      0310 JSR BDIV
      0320 JMP PUTVAR
      0330 ;
      0340 ;RaNDom Constant
      0350 ;
      0360 RNDC .BYTE $42,$06,$55,$36,$00,$00

      Czyli wartość (dwa kolejne odczyty - pierwszy do LSB, drugi do MSB) pobrana z rejestru RANDOM ($D20A) z zakresu 0..65535 dzielona jest przez 65536.0 co w wyniku daje wartości z zakresu [0.0..1.0).

      bocianu:

      RND(0)>0.4

      Więc spróbujcie może zrobić to samo na piechotę w MP jakimś DPEEK z konwersją do REAL i dzieleniem przez 65536.0.

      Edit: Albo prościej: DPEEK i porównanie z wartością obliczoną z 0.4*65536 czyli 26214.

      Edit 2: Popieprzyło mi się z DPEEK - trzeba zwykły PEEK dwa razy z $D20A i wtedy porównanie
      (peek($D20A) or peek($D20A) shl 8) > 26214