NKC Forum
Register | FAQ | Search | Who is online? | Member list | Today's posts | Calendar | Login



Author Topic: Umfrage: Welches Spiel für den 68K NKC als nächstes?
m.haardt
Voll in Gange
***
ID # 93


  Posted on January 20, 2023 09:46 PM (#41)  |  Quote Quote   PM PM   E-mail E-mail
Ich kenne die Details nicht 100%, aber es gibt beim 6522 Strobes, um parallel Daten zu übertragen, die pro Schreibzugriff aktiv werden. Ich meine es gäbe auch ein Schieberegister, was dann auch mehrfach geschoben würde.

Michael

Posts: 501 | Member since: April 2008 | IP address: not saved
andi
Kennt sich schon aus
**
ID # 213


  Posted on January 20, 2023 11:03 PM (#42)  |  Quote Quote   PM PM   E-mail E-mail
Ja hmm diese "Spezialsachen" müsste man testen. Hab ich nie gebraucht. Wüsste aber nicht warum das nicht funktionieren sollte.
Aber nach heutigen Standards ist der 6522 sowieso völlig obsolet. Da hat jeder AVR besseres. Für neue Projekte würd ich den nicht mehr verwenden.

Posts: 132 | Member since: May 2021 | IP address: not saved
m.haardt
Voll in Gange
***
ID # 93


  Posted on January 21, 2023 01:43 PM (#43)  |  Quote Quote   PM PM   E-mail E-mail
Wenn ein Schreibzugriff ein Strobe erzeugt, damit die Gegenseite die Daten übernimmt, erzeugen mehrere Zugriffe halt mehrere Strobes, was für die Gegenseite wie mehrere Bytes aussieht.

Was den AVR angeht, hast Du natürlich Recht. Der ganze NKC ist pures Retrocomputing, aber mir macht genau das immer noch Spaß.

Der Atmega2650 hat übrigens ein external memory interface, aber seine Zyklen sind derart kurz, dass der NKC da im Leben nicht mitkäme. :)

Michael

Posts: 501 | Member since: April 2008 | IP address: not saved
smed
Stammgast
**
ID # 114


  Posted on January 21, 2023 02:13 PM (#44)  |  Quote Quote   PM PM   E-mail E-mail
>Der Atmega2650 hat übrigens ein external memory interface, aber seine Zyklen sind derart kurz, dass der NKC da im Leben nicht mitkäme.

Das erinnert mich an eins meiner vielen unvollendeten Projekte/Ideen: Arduino Mega mit externem statischen Ram erweitern:

https://hackaday.io/project/21561-arduino-mega-2560-32kb-ram-shield Ram chip: UM61256FK-15ns

aber hierfür ein dual-ported RAM verwenden (IDT7007) mit dem zweiten port am NKC. Bin mir allerdings nicht sicher ob sich der IDT7007-55ns mit dem AVR externen Bustiming verträgt, allerdings kann man beim AVR external interface (bis zu 4?) wait-states konfigurieren !

AVR datasheet: "External Memory devices have different timing requirements. To meet these requirements, the XMEM interface
provides four different wait-states as shown in Table 9-3 on page 37. It is important to consider the timing specification
of the External Memory device before selecting the wait-state. The most important parameters are the access
time for the external memory compared to the set-up requirement. The access time for the External Memory is
defined to be the time from receiving the chip select/address until the data of this address actually is driven on the
bus. The access time cannot exceed the time from the ALE pulse must be asserted low until data is stable during a
read sequence (see tLLRL+ tRLRH - tDVRH in Tables 31-11 through Tables 31-18 on pages 367 - 370). The different
wait-states are set up in software.
"


Somit waere superschnelle Datenübertragung zwischen PC(USB)->Ardunio/AVR->NKC(RAM) möglich, zwar nur 32K aber immerhin. Ideal fuer schnelle Iterationen mit dem gcc als NKC crosscompiler auf PC

Gruss
smed

-----------------------
NKC'ler seit 1984 (Pause zw. 1988-2017)
CPU68k,CPU68000,4xROA64,6xIOE,6xGDP,GDPHS,8xSBC2/3,HEXIO,6xKEY,UHR3,PROMER,CENT,SER,SOUND,CAS,6xBUS2,4xBUS3,3xPOW5V,2xTAST..und einen ArduinoMEGA mit auf dem BUS, und eine selbstgebastelte MEM960k.

NKC - OpenSource since 1983

Posts: 182 | Member since: January 2011 | IP address: not saved
m.haardt
Voll in Gange
***
ID # 93


  Posted on January 21, 2023 06:19 PM (#45)  |  Quote Quote   PM PM   E-mail E-mail
Wenn es um Lesen/Schreiben einer ROA geht: Das ist einfacher zu machen. Statt eines external memory interface kann der Arduino einfach DMA Busmaster werden, indem er die Leitungen vom NKC einzeln bedient, und dann eine ROA lesen und schreiben. Man braucht trotzdem noch ein paar NOPs hier und da, wenn man Z80-Timings erzeugen möchte. Das hat mir bei der CPUSCMP-Karte sehr geholfen und auch beim Debuggen meines 68008 Systems, um zu prüfen, dass die BANKBOOT korrekt funktioniert. Inzwischen prüfe ich IO Karten lieber per Arduino, weil es einfach schneller geht. Nur die SER will ums Verrecken nicht so funktionieren, obwohl ich alle Timings mit dem Logic Analyzer prüfte.

Alternativ kann der Arduino /RD und /WR als Interrupts konfigurieren und damit sogar RAM oder IO emulieren.

Michael

Posts: 501 | Member since: April 2008 | IP address: not saved
smed
Stammgast
**
ID # 114


  Posted on January 21, 2023 08:06 PM (#46)  |  Quote Quote   PM PM   E-mail E-mail
Hi,
sowas habe ich schon am laufen, hatte es mal hier: https://nkc-schuetz.de/forumdrc/index.php?mode=viewthread&forum_id=5&thread=44&z=1#post4
und
https://nkc-schuetz.de/forumdrc/index.php?mode=viewthread&forum_id=2&thread=110&z=2#post21

im Forum vorgestellt. Habe das noch weiter verbessert in meiner PC/68kNKC Verbindung zum Programmieren: der Arduino-Mega schreibt ueber den BUS in die ROA, löst dann einen Reset aus und emuliert eine Tatatur-Eingabe ("G" "A") sodass das Programm (mit NKC Bibliotheks-Kennung im executable) auch automatisch gestartet wird (https://www.youtube.com/watch?v=xPywh_BirmM). Das funktioniert meistens wunderbar, allerdings gibt immer mal wieder Probleme so dass ich die Übertragung 2x oder 3x machen muss, das ist nicht wirklich schlimm da es sehr schnell geht, aber schon etwas unbefriedigend. Koenntest du deinen Arduino code hier zur Verfügung stellen? Ich habe keine wirklichen Hardware Kenntnisse - meine Version funktioniert glaube ich nur 'durch Zufall' einigermassen.

Gruss
smed

-----------------------
NKC'ler seit 1984 (Pause zw. 1988-2017)
CPU68k,CPU68000,4xROA64,6xIOE,6xGDP,GDPHS,8xSBC2/3,HEXIO,6xKEY,UHR3,PROMER,CENT,SER,SOUND,CAS,6xBUS2,4xBUS3,3xPOW5V,2xTAST..und einen ArduinoMEGA mit auf dem BUS, und eine selbstgebastelte MEM960k.

NKC - OpenSource since 1983

Posts: 182 | Member since: January 2011 | IP address: not saved
m.haardt
Voll in Gange
***
ID # 93


  Posted on January 22, 2023 08:42 PM (#47)  |  Quote Quote   PM PM   E-mail E-mail
Bitte sehr:

http://www.moria.de/~michael/tmp/

Das habe ich bei der CPUSCMP benutzt, um die Hardware zu testen. Ich prüfte die Timings mit dem Logicanalyzer. Die Idee ist ja original von Dir, soweit ich mich erinnere. Die Verbindungen sind teilweise geändert, damit man flexibler wird, damit auch andere Sachen anzustellen.

Michael

Posts: 501 | Member since: April 2008 | IP address: not saved
smed
Stammgast
**
ID # 114


  Posted on May 16, 2023 07:50 PM (#48)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,
mein NKC ist nach längerer Pause wieder aufgebaut und ich habe ausprobiert ob wohl ein Defender68k game machbar ist. Defender ist ein sehr schnelles Spiel.

Bisher bin ich noch am rumprobieren, zZt sieht es so aus:



Rumfliegen per Joystick kann man schon und die Landschaft und der Sternenhimmel bewegt sich mit, rumballern (Laser!) und was abschießen geht auch schon (bisher ohne Sound). Der EF9366 kommt allerdings schon ziemlich ins schwitzen. Das Gezuppel oben am Bildschirm ist ein poor-mans Radarschirm. Die feindlichen Raumschiffe sind noch Quadrate, explodieren aber schon sehr schön !

Sneak preview, rein experimentell: Hier das executable, irgendwo in Speicher laden und ueber Bibliothek starten: file.m68

Gruss
smed

PS Braucht Joystick:

#define IOE_PORTA BYTE_AT(0xFFFFFF30)
#define JOYSTICK_LEFT 0xFE //bit 0
#define JOYSTICK_RIGHT 0xFD //bit 1
#define JOYSTICK_UP 0xFB //bit 2
#define JOYSTICK_DOWN 0xF7 //bit 3
#define JOYSTICK_FIRE 0xEF //bit 4


-----------------------
NKC'ler seit 1984 (Pause zw. 1988-2017)
CPU68k,CPU68000,4xROA64,6xIOE,6xGDP,GDPHS,8xSBC2/3,HEXIO,6xKEY,UHR3,PROMER,CENT,SER,SOUND,CAS,6xBUS2,4xBUS3,3xPOW5V,2xTAST..und einen ArduinoMEGA mit auf dem BUS, und eine selbstgebastelte MEM960k.

NKC - OpenSource since 1983

Posts: 182 | Member since: January 2011 | IP address: not saved
tuti
Stammgast
**
ID # 225


  Posted on May 16, 2023 11:05 PM (#49)  |  Quote Quote   PM PM   E-mail E-mail
COOL!

Mein Joystick hakt ein bisschen (muss die Mikroschalter mal richten) und entweder dadurch oder durch noch ungenaue Abfrage der Richtungen lässt sich deine Demo sehr verwirren.

Aber trotzdem: Echt klasse!!! :D


Gruß,

Torsten

-----------------------
Definitiv sind Frösche und Himbeeren am besten!

Posts: 222 | Member since: July 2022 | IP address: not saved
smed
Stammgast
**
ID # 114


  Posted on May 17, 2023 11:12 PM (#50)  |  Quote Quote   PM PM   E-mail E-mail
Hallo, neue Version mit ein Paar updates:



file.m68

Gruss
smed

-----------------------
NKC'ler seit 1984 (Pause zw. 1988-2017)
CPU68k,CPU68000,4xROA64,6xIOE,6xGDP,GDPHS,8xSBC2/3,HEXIO,6xKEY,UHR3,PROMER,CENT,SER,SOUND,CAS,6xBUS2,4xBUS3,3xPOW5V,2xTAST..und einen ArduinoMEGA mit auf dem BUS, und eine selbstgebastelte MEM960k.

NKC - OpenSource since 1983

Posts: 182 | Member since: January 2011 | IP address: not saved
tuti
Stammgast
**
ID # 225


  Posted on May 19, 2023 11:09 PM (#51)  |  Quote Quote   PM PM   E-mail E-mail
Hi.

Ich nehme an, dass es für echte Tests und Rückmeldungen noch zu früh ist.

Aber bei Bedarf an Test-Feedback sag gerne Bescheid...

Torsten

-----------------------
Definitiv sind Frösche und Himbeeren am besten!

Posts: 222 | Member since: July 2022 | IP address: not saved
andi
Kennt sich schon aus
**
ID # 213


  Posted on May 20, 2023 09:58 PM (#52)  |  Quote Quote   PM PM   E-mail E-mail
Tolles Spiel. Freu mich schon darauf es zu spielen wenn mein NKC wieder einsatzfähig ist.
btw. hat eigentlich schon mal wer Minesweeper ausprobiert?

Gruss
Andi

Posts: 132 | Member since: May 2021 | IP address: not saved
tuti
Stammgast
**
ID # 225


  Posted on May 21, 2023 12:34 AM (#53)  |  Quote Quote   PM PM   E-mail E-mail
Quote by andi:
hat eigentlich schon mal wer Minesweeper ausprobiert?



Würde gerne, habe aber keine GDP-FPGA. :eek:

T.

-----------------------
Definitiv sind Frösche und Himbeeren am besten!

Posts: 222 | Member since: July 2022 | IP address: not saved
smed
Stammgast
**
ID # 114


  Posted on May 21, 2023 12:08 PM (#54)  |  Quote Quote   PM PM   E-mail E-mail
Hi tuti,
das Defender ist noch ziemlich experimentell da fehlen noch viele Details. Grosse Baustellen sind:

- die Landschaft (Terrain) wird prozedural erzeugt, aber die Zufallszahlen dazu sind noch nicht sehr gut, sodass nicht viel Variation da ist. Die Inspiration habe ich von hier: https://www.youtube.com/watch?v=ZZY9YE7rZJw&t=987s im Code ist es die Funktion drawTerrain().

- Irgendwas laeuft bei der Erzeugung der Töne noch schief

- die Joystick-Steuerung des Raumschiffes ist noch nicht gut

Hier eine neue Version, die Monster sind jetzt frecher und kommen angeflogen, sind aber noch nicht wirklich gefährlich: file.m68

Langsam kommt schon etwas Spielspass auf. Noch hält die GDP mit, mal sehen was noch geht.

Wer unter die Haube schauen will: Defender.h

Gruss
smed

-----------------------
NKC'ler seit 1984 (Pause zw. 1988-2017)
CPU68k,CPU68000,4xROA64,6xIOE,6xGDP,GDPHS,8xSBC2/3,HEXIO,6xKEY,UHR3,PROMER,CENT,SER,SOUND,CAS,6xBUS2,4xBUS3,3xPOW5V,2xTAST..und einen ArduinoMEGA mit auf dem BUS, und eine selbstgebastelte MEM960k.

NKC - OpenSource since 1983

Posts: 182 | Member since: January 2011 | IP address: not saved
andi
Kennt sich schon aus
**
ID # 213


  Posted on October 22, 2023 06:45 PM (#55)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,
hab nach längerer Zeit mal wieder was programmiert am NKC. Hab eine S/W-Version von Minesweeper gemacht.
Die kann auch mit einer "normalen" GDP64-HS (und Tastatur) gespielt werden.
https://github.com/Creep69/NKC/tree/master/SW/68k/c/Minesweeper
mine_00.68k, mine_08.68k ist die farbige variante (für HDP-FPGA)
mine_m00.68k, mine_m08.68k ist die S/W-Variante für "normale" GDP64-HS.
Starten ohne Parameter: Beginner-Mode (9x9, 10 Minen).
Starten mit "-i": Fortgeschrittener-Mode (16x16, 40 Minen)
Source ist hier (für den Fall dass es jemanden interessiert): https://github.com/avg67/nkc/tree/main/SW/mine_mono


Posts: 132 | Member since: May 2021 | IP address: not saved
tuti
Stammgast
**
ID # 225


  Posted on October 29, 2023 01:23 PM (#56)  |  Quote Quote   PM PM   E-mail E-mail
Hallo, andi.

Prima! Vielen Dank dafür.

Ich habe es heute dann auch endlich mal "installiert" und gespielt. Und ich war sofort wieder im Fieber...

So sehr, dass ich wohl die Pfeil-Tasten zu schnell hintereinander gedrückt habe und der Rechner dann hing. Muss aber nicht an deinem Spiel liegen. Ich habe meinen USB- zu PS/2-Adapter auch unabhängig davon schon mal ähnlich zum Absturz gebracht.

Was mir noch auffiel: Beim wiederholten Start bekam ich oft ein Ausgangsbild mit einer einzigen Zahl in der Mitte und nichts anderem angeboten. Da ist das erste Aufdecken/Markieren dann reine Glückssache. Willst du das noch abfangen?

Und: Wenn man's denn schafft steht da "Game over - you won!". War erst ganz verwirrt. "Game over"? Warum? Das "you won!" hatte ich gar nicht mehr wahrgenommen. Vielleicht lieber "Congratulations - you won!"?

Aber trotzdem cool.

Gruß, Torsten

-----------------------
Definitiv sind Frösche und Himbeeren am besten!

Posts: 222 | Member since: July 2022 | IP address: not saved
andi
Kennt sich schon aus
**
ID # 213


  Posted on October 29, 2023 07:31 PM (#57)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,
Vielen Dank für den Feedback.
Tritt das Problem wo nur ein Feld angezeigt wird nur gelegentlich oder bei jedem Start auf? Kann das Problem bei mir leider nicht reproduzieren.
Kannst du mir einen Screenshot davon schicken?

LG Andi

Posts: 132 | Member since: May 2021 | IP address: not saved
andi
Kennt sich schon aus
**
ID # 213


  Posted on October 29, 2023 09:04 PM (#58)  |  Quote Quote   PM PM   E-mail E-mail
Hallo,
Zu Minesweeper: Am Anfang (wenn noch kein Feld aufgedeckt ist) ist es natürlich eine Glücksache. Die Minen sind zufällig verteilt (jedes Mal anderes). Wenn du das erste Feld umdrehst und zufällig eines erwischt wo mind. in einem benachbarten Feld eine Mine versteckt ist dann wird nichts weiter aufgedeckt (nur eine Zahl angezeigt). Wenn du hingegen ein feld erwischt wo ringsum nichts ist wird dieses und alle benachbarten Felder, wo ebenfalls rundum nichts ist, aufgedeckt. Das ist so gewollt (Ist an MS Minesweeper angelehnt). Da braucht man am Anfang ein wenig Glück :)
Hab weiters ein Update eingecheckt wo nun auch der Highscore gespeichert wird. Da kann man in Zukunft gegen sich selber spielen.
Anzeigen des Highscores mit -h (-h -i für den "Fortgeschrittenen" Mode)

Posts: 132 | Member since: May 2021 | IP address: not saved



| https://hschuetz.selfhost.eu | Board rules | Privacy policy


Tritanium Bulletin Board 1.8
© 2010–2021 Tritanium Scripts


Site created in 0.020069 seconds
Processed 18 files
gzip compression enabled
808.37 KiB memory usage