GAME : COMO-SUDO CBM I + II / SUDOKU VARIANTE

  • Letztens fiel mir ein wie ich ohne Probleme auf den guten alten CBM's ein

    Sudoku hinbekommen kann ohne dass Stundenlang etwas berechnet

    werden muss. Es war am Ende sehr einfach. Irgendwie zu einfach.

    Dann habe ich etwas drum herum gebaut und fertig ist die Samstag/Sonntag Arbeit.


    Ein kleines Sudoku fuer CBM I + II.

    Getestet aber nur auf einem CBM II.

    Aber so geschrieben, dass es eigentlich auf einem CBM I

    auch laufen sollte. Aber : 80 ZEICHEN.


    Wer das Spiel haben mag, kann mich gerne via PM anschreiben.

    Fragen zur Programmierung werden gerne beantwortet.

    Alles in PURE BASIC.

    Es gibt verschiedene Schwierigkeitsgrade.


    Nun ein paar Bilder und einen schoenen 1. Advent.



  • Da ist ein Fehler im Programm...


    Bildschirmfoto 2021-11-28 um 19.04.32.png


    das sind doch bestimmt nicht noch 90 - 10 Berechnungen oder ?... sondern wenn dann 9 - 1

    Gruß Torsten

    BFZ MFA, ZX80Core, AX81, ZX81, ZX81NU, Spectrum+, Harlequin, MSX VG8010, Amstrad NC100, Cambridge Z88, C64, C128D, Amiga 500 & 1200, Atari Portfolio, HP200LX, IBM PC5155, TP755c, TP755cx, T20, T41, T61, PS/2 (Model 40SX), PS/2E, Accura 101, Apple //e, Sharp PC1401 & PC1403H, TI59 m. PC-100c, HP48SX & HP48GX


    ::matrix::

  • Kompliment! Tolle Leistung für ein Wochenende.


    Den Source Code hätte ich sehr gerne. Sieht super aus und liesse sich vermutlich gut auf meine Wangs portieren.


    Lieben Gruss,

    Martin

  • Wenn's reines Basic ist, sollte das ja kein Problem sein. ;)

    Würde das auch auf einem 8032 laufen oder wurden da spezielle Sachen der CBM I+II verwendet?

    i-Telex 211230 dege d

    http://www.marburger-stammtisch.de


    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Wenn's reines Basic ist, sollte das ja kein Problem sein. ;)

    Würde das auch auf einem 8032 laufen oder wurden da spezielle Sachen der CBM I+II verwendet?

    Es sollte eigentlich ohne Probleme auf dem 8032 laufen.

    Ich habe keine Pokes genommen, kein DISPOSE und kein ELSE.

    Sobald ich heute etwas Zeit finde werd ich das auch mal auf den 8032 aufspielen.

  • Wie errechnest du dir ein neues Spielfeld?

    Wird das Spielfeld, also die Startzahlen zufällig ermittelt?

    Oder hast du ein Set von spielbaren Start Zuständen?

    Ich benutze eine Basis von Zahlen und dann werden die Zahlen gemischt.

    Es werden 2 Werte per Zufall ermittelt und dann werden die beiden

    Werte im 9 x 9 Feld gegeneinander ausgetauscht. Dieses wird einige male

    gemacht, so dass eine voellig neue Loesung entsteht und keine weiteren

    Berechnungen mehr gemacht werden muessen. Somit sind dann auch

    die langsameren Computer in der lage recht schnell ein Sudoku Feld

    aufzubauen. Durch das zufaellige Austauschen mit zufaelligen Werten

    gibt es auch immer ein neues Spielfeld.


    Ein SET von spielbaren Zustaenden hatte ich in der #LOAD 7 vorgestellt.

  • Super, vielen Dank! :thumbup:

    i-Telex 211230 dege d

    http://www.marburger-stammtisch.de


    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Ich habe gerade mal eine Runde gespielt. Läuft prima.


    Eine Kleinigkeit ist mir aufgefallen: Mir fehlt die Möglichkeit eine gesetzte Zahl wieder zu löschen. Wenn ich mich vertan habe und die Zahl noch gar nicht sicher war. Vielleicht mit Leertaste. Kannst du ja mal auf die Todo-Liste setzen. ;)

    i-Telex 211230 dege d

    http://www.marburger-stammtisch.de


    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • hallo falco,


    wie groß ist dein programm?

    das wäre ideal, bei retrotreffen um es in ein eprom zu brennen.

    so könnte man es immer, sofort nach dem computerstart, aktivieren.

    ohne mühsamm irgendwo herunterzuladen.

    da mancheiner an den rechner immer herumspielt ;)


    ich hate ein kleines maschinen programm, welches ein basich programm, 1:1 aus dem eprom,

    ins ram kopierte und dann die basic pointer setzte. das war dann universell.


    so konnten damals viele meiner kunden ihre programme aus den eproms, ohne floppy usw. laden.

    oft wurde es bei den maschinen-steuerungs-rechnern benutzt. damit nach dem einschalten die wieder bereit waren.

    so hatte ich natürlich ram und rom-türmchen mit bank umschaltung um auch große programme,

    oder mehrere programme, verwalten zu können.

    viele dachten, alles ist in maschine geschrieben, es waren aber basic programme,

    die nur in den speicher kopiert wurden. da der basic interpreter nur ein byte pro basic befehl benötigt,

    waren viele programme auch kleiner als maschinenprogramme.


    gruß
    helmut


    edit....für die cbm600/700 hatte ich ja die externen modul platinen. in verschiedenen versionen.

    auch die proxa7000 / 8832 software gab es in eproms, so hatte man nach dem einschalten

    direkt einen 8032 / 8096 / 8296 rechner.

  • Hallo mein lieber,


    erstmal tut es mir sehr leid das es nicht geklappt hat die Mischpoke rauszubekommen.

    Aber ich hoffe du gibst nicht auf !!!!


    So, nun zum Como-Sudo. Was ich gesehen habe sind es ca. 5 Kb bzw. 21 Bloecke.

    Fuer das EPROM bekomme ich das aber definitiv noch sehr sehr kleiner.

    Beim gequetschten Quellcode muss ja keiner mehr durchblicken wenn es auf

    einem Baustein gebrannt wird. ;-)))))


    Wuerdest du das fuer CBM II oder auch fuer CBM I brennen ?


    Das einzige was ich noch machen wuerde in der EPROM Version, waere ein

    etwas ausfuehrlicheres (C)opyright wenn das in Ordnung ist.


    Also.........FEUER FREI :):)

  • Du kannst einfach jede Zahl ueberschreiben mit druck auf die Zahlentasten ;-))

    Ja, ich weiß. Aber dann steht da eine Zahl wo eigentlich noch keine hin gehört.


    Ist ja auch nur ein Vorschlag. ;)

    i-Telex 211230 dege d

    http://www.marburger-stammtisch.de


    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

    • Official Post

    Eine EPROM-Variante würde beim CBM II natürlich am ehesten was her machen, da kann man das auf ein Steckmodul packen.

    Das CBM II Kernal unterstützt auch Modul-Autostart.

    Ohne weitere Verrenkungen kann man 3 x 8KB per Modul einbinden, mit Banking natürlich auch mehr.

  • Du kannst einfach jede Zahl ueberschreiben mit druck auf die Zahlentasten ;-))

    Ja, ich weiß. Aber dann steht da eine Zahl wo eigentlich noch keine hin gehört.


    Ist ja auch nur ein Vorschlag. ;)

    Du musst eh alle Felder fuellen. Insofern weiss ich nicht obs

    wirklich noetig ist. Und wenn sich jemand vertippt, hat er

    es gleich doppelt schwer weil er ja seinen eigenen Tipp Fehler

    finden muss. HAHA :xmas::xmas: ( Nett gemeintes HAHA )


    Hast du dich etwa vertippelt ? ::heilig::

  • Hast du dich etwa vertippelt ? ::heilig::

    Ja. :tüdeldü:


    Man denkt, die Zahl ist eindeutig und dann stellt man fest: Mist, da gab es doch noch zwei Möglichkeiten.

    Ich hab's dann nicht mehr geregelt bekommen und wusste nicht mehr, welche Zahlen jetzt gültig sind und welche nicht und hab's abgebrochen. :fp:

    i-Telex 211230 dege d

    http://www.marburger-stammtisch.de


    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Beim gequetschten Quellcode muss ja keiner mehr durchblicken wenn es auf

    einem Baustein gebrannt wird. ;-)))))

    ja, alles weg lassen, alles quetschen.
    ideal 4kb, damit man es auch für die anderen cbm rechner benutzen kann.

    z.b. cbm8032, die habe ja zwei freie 4kb steckplätze.
    so könnte man in die demogeräte so ein eprom packen. und mit sys aufrufen.
    oder im editor rom, es direkt, nach dem rechner start aufrufen, wenn eine bestimmte taste gedrückt oder
    nich gedrückt wird. das ist jedem dann aber selbst überlassen.
    wie bereits christian geschrieben hat, für die cbm-ii / 600 / 700 kann man 8kb (e)eproms benutzen.

    Wuerdest du das fuer CBM II oder auch fuer CBM I brennen ?

    meine disketten hat der christian. da müssten die toolkitroutinen mit draufsein.

    aber wie ich die damals gennant habe und in welchem eprom die stecken, habe ich vergessen.


    das verbesserte maschinenprogramm hat mir dann dr. peter junkes geschrieben.

    ist eigentlich einfach. das programm war nicht groß, nur ein paar bytes groß.

    er hatte es so damals dann für mich geschrieben, das es in jedem adressbereich laufen konnte.

    so konnte man die eproms auch in andere bereiche stecken ohne die adressen umzuschreiben.


    am anfang waren bytes für die parameter reserviert. wie groß das basic programm ist.

    nach dem sys, dem start nach den parametern, kopierte ein kleines programm, die nach diesem programm

    gespeicherten basic zeilen 1:1 in den basic speicher. und setzte dann entsprechen die pointer für das basic ende.


    das programm konnte damals noch viele sachen mehr. z.b. ein program in den cassetten puffer und ein weiteres

    in den basic bereich und einen teil direkt in den bildschirmbereich und dann starten,

    optional mehrere programme per menü wählbar usw.


    es reicht aber erstmal, ganz einfach von eprom bereich in den basic bereich kopieren und dann starten.

    damit du möglichst viel platz übrig hast, von den 4kb, für dein programm.


    dann kann es ja jeder benutzen, man muss nur dein basic programm, ab adresse xxxx im eprom,

    durch sein eigenes basic programm ersetzen. somit ist dann jedes basicprogramm bootfähig.

    die kleine kopierroutine bleibt dann immer so.


    da wird sich einer hier finden, die 6502 assembler programmieren können.


    Das einzige was ich noch machen wuerde in der EPROM Version, waere ein

    etwas ausfuehrlicheres (C)opyright wenn das in Ordnung ist.


    Also.........FEUER FREI :)

    du kannst da alles machen, wie in deinem basic programm.


    man könnte ja ein paar bytes, in der kopierroutine, dafür vorsehen,

    dann kann jeder einen text eingeben, der nach dem sys direkt in den bildschirmspeicher ausgegeben wird.


    aber du kannst ja, nach dem start jeden text selbst ausgeben.

    z.b. bildschirm löschen, print"deinen copyrigt text" dann for next für eine pause und dann

    erst dein programm starten oder erst ein menü programm starten und das ruft das eigentliche programm auf.


    wir haben gerne auch manche sachen versteckt. oder nur, wenn eine bestimmte taste betätigt wurde, aktiviert.


    ich hoffe, du findest einen der das kleine kopier / verschiebe programm in assembler, für dich schreibt.

    eigentlich kann es jeder gebrauchen.


    gruß

    helmut