Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » P8000 RAM Board » Themenansicht

Autor Thread - Seiten: -1-
000
18.02.2009, 23:24 Uhr
Enrico
Default Group and Edit


So, geschafft!

Es hat zwar etwas gedauert die ganzen Fehler zu finden, aber nun ist mein Rechner gerade am Wega booten, mit verdammt viel RAM:





Die Platine lässt sich paarig mit 1 MB oder 4 MB SIMMs bestücken.
Macht also 2, 4, 8, oder 16 MB RAM.

Aber: in der Firmware ist ein Bug, dadurch bleibt der Rechner beim Testpunkt 70 in einer Endlosschleife hängen. Mit einem zusätzlichen IC habe ich den RAM auf 8 MB minus ein Segment (64k) beschränkt, dann funktioniert es.

Bei 16 MB RAM ( mit dem RAM Loch bei 8 MB) gibt es einen Fehler 97.

Ansonsten funktionierts:










Da so einige von Euch vorhaben eine P8000 zum Treffen mitzubringen, würde ich die Karte noch ganz gern in anderen Rechnern ausprobieren.



Alternativ wäre auch S-RAM möglich. Das wäre zwar teurer, hätte aber den Vorteil, dass man den Refresh abschalten könnte. Das wäre rechnerisch ein Unterschied von 5%. Ist nur die Frage, ob man das merkt.
--
MFG
Enrico

Dieser Beitrag wurde am 18.02.2009 um 23:42 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
18.02.2009, 23:36 Uhr
paulotto



sieht ja gut aus für alle, die wenig Speicher in der P8000 haben. I.A. reichen aber die 1 (i.M. nur 768k wegen einer defekten RAM-Platine) bzw. 2M in meiner P8000 aus. Ich habe noch keine Einschränkungen mitbekommen. Vielleicht, wenn 7 User daran arbeiten...
Dann ist aber auch die Geschwindigkeit dahin und alle müssen sich in warten üben
Georg ist vielleicht sehr interessiert, da er gerade an anderer Stelle von nur 256k schrieb...

Gruß

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
19.02.2009, 06:50 Uhr
Olli

Avatar von Olli

Naja - Einschraenkungen sollte man auch nicht direkt merken... die Kiste lagert halt auf Platte (Swap) aus wenn der RAM voll ist. Das bekommt man unter WEGA aber nicht mit wenn sie das tut (ausser das es langsammer wird) ... Da gibts leider keine Tools zur Anzeige fuer wie bei modernen Unices.

Enrico - baust du mir auch so eine Karte? Scherz beiseite - Wann kommt die "Serienproduktion"?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 19.02.2009 um 06:55 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
19.02.2009, 06:52 Uhr
Georg

Avatar von Georg

Super Sache Enrico, gibst du die Schaltung zur Nachnutzung frei?
dann könnte ich ja mein RAM Problem lösen...
Georg
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
19.02.2009, 08:48 Uhr
paulotto



mit dem Loch bei 8MB wird Wega wohl nicht klarkommen,weil der Hardwaretest abbricht, wenn er kein weiteren fortlaufenden RAM findet. Kannst ja probeweise mal einfach eine 256-er Karte von Deinen 4en (allerdings nicht die erste Karte im Adressbereich) ziehen und sehen was dann passiert. Kann schon sein, daß in der Software ein Bug ist, wenn Du 8MB da reinhaust. Die Eprommer-Software für den neuen Programmer2 geht auch nur bis 27128 obwohl bis 27512 ausgelegt. Der Programmteil für die 27256 und 27512 hat auch einen Bug. Es macht aber auch keinen Sinn, diese Typen mit diesem Programmer zu programmieren, weil es keinen schnellen Algorithmus für diese Typen im Programm gibt. Selbst wenn der Algorithmus i.O. wäre, würde man Stunden davor zubringen, diese Teile zu programmieren und außerdem werden die dabei furchtbar gestreßt...

Gruß

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
19.02.2009, 08:52 Uhr
Olli

Avatar von Olli

Mehr als 8MB gehen eh nicht von der MMU Konfiguration her...
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
19.02.2009, 09:51 Uhr
P.S.



Ich weis jetzt nicht, ob das hier her passt, aber ich habe gerade an anderer Stelle ein Lit.-Verzeichnis veröffentlicht und ehe ich dann wieder lange suchen muß - hier also meines zum U8000:

Literaturzusammenstellung zum U8000

(1) Hinweise zur Anwendung
Handbuch U8000
Mikroprozessor CPU U8001/U8002 - Technische Beschreibung
VEB Mikroelektronik "Karl Marx" Erfurt, 100 S.

(2) Programmierung des 16-Bit-Mikroprozessorsystems U8000
VEB Verlag Technik 1987, von Dr.-Ing. Heinz Brennenstuhl
(mit Assembler-Listing Monitorprogramm), 222 S.

(3) (Z8000 - Mikroprozessor-System)
te-wi-Verlag 1980, von Peter Stuhlmüller
(viel Hardwareprobleme, Multiprozessoranwendungen u.a.), ca. 450 S.

(4) Frei programmierbarer Arithmetikmodul für den K1520 (mit U8002D)
rfe 1984, H8, S483-485, 492, von Fey, P.; Kriesten, S.; Rieken, R.

(5) Leistungsfähige 16-bit-ZRE-Karte für K1520
rfe 1983, H10, S629-631, 636, von Rehm, W.; Fey, P.

(6) Testhilfen für 16-bit-Mikrorechner
rfe 1985, H4, S221-224, von Dipl.-Ing. Ralf Rieken, Dipl.-Ing. Mattias Kirchhoff

(7) Universelles 16-bit-System USS 8000
rfe 1985, H5, S282-285, von Dipl.-Ing. Wolfgang Rehm
(u.a. Bussignal-Belegung der ZRE.UNI)

(8) Erweiterung des K1520 durch Integration eines 16-bit-Mikrorechners (mit U8001/2)
rfe 1985, H8, S495-497, von Dipl.-Ing. Nobert Braumüller, Dr.-Ing. Heinz Brennenstuhl, u.a.

(9) Das 16-bit-Mikroprozessorsystem U8000
rfe 1985, H11, S687-691 (T1); H12, S760-763, von Dipl.-Ing. Frank Meinecke

(10) Festplattensteuerung für U8000-Rechner
rfe 1988, H8, S516-517, von Dr.-Ing. Ralf Rieken

(11) Einplatinen-Computer mit Z8000 (Z8002)
ELEKTRONIK 1980, H16, S44-50, von Rolf-Dieter Klein
(sehr gute Hardwarebeschreibung mit Schaltbild und Monitor-Listing)

Das Wissen der Menschheit gehört allen Menschen! -
Wissen ist Macht, wer glaubt, der weis nichts! -
Unwissenheit schützt vor Strafe nicht ! -
Gegen die Ausgrenzung von Unwissenden und für ein liberalisiertes Urheberrecht!
PS
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
19.02.2009, 11:06 Uhr
Tom Nachdenk




Zitat:
Olli schrieb
Mehr als 8MB gehen eh nicht von der MMU Konfiguration her...

Na aber der P8000 hat doch 3 MMUs da sollte man doch auf 16 MB kommen können, auch wenn vermutlich die UserMMU der begrenzende Faktor ist. Hier stehen ja nur 64 Segmente zur Verfügung die bei maximaler Ausnutzung aller Segmentgrößen auf 8 MB kommt. Oder wird A23 nicht bedient?

Evtl läßt sich ja der Speicher der oberen 8 MB von einem angepassten Begemot-Treiber benutzen?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
19.02.2009, 11:44 Uhr
Olli

Avatar von Olli

Es werden im segmentierten Betrieb nur 2 MMUs benutzt. Die 3. MMU wird nur beim nicht segmentierten Betrieb benoetigt.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
19.02.2009, 11:49 Uhr
paulotto



dann sind also wirklich nur maximal 8MB sinnvoll. Zu klären wäre aber noch die Frage, warum bei max 8MB der Fehler bei Enrico auftritt...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
19.02.2009, 13:00 Uhr
Tom Nachdenk



Ich tippe mal das das evtl. mit dem statischen RAM und dem ROM zusammenhängt das bei der Initialisierung hinter das Ende des DRAM gemappt wird. Evtl. ist die Hardware da irgendwo begrenzt das es da zu Konflikten kommt, z.B. sich diese neue Startadresse innerhalb der ersten 8 MB liegen muss.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
19.02.2009, 16:05 Uhr
digger

Avatar von digger

Klasse Sache Enrico!

Wenn ich so ein Modul mit 4 MB bestücke und in meinen P8000compact stecken würde, dann hätte ich doch auf einen Schlag 3 Slots frei? .. da würde dann gut die 286er Karte und die noch in Entwicklung befindliche Ethernetkarte reinpassen!

Gruss Frank
--
visit:
http://error-404.de
http://hive-project.de
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
19.02.2009, 19:03 Uhr
Enrico
Default Group and Edit


Also nochmal von vorn. Ein paar Sachen hatte ich ja nicht geschrieben.

Die Firmware (Olli hat die Quellen) testet den RAM ohne Nutzung der MMUs.
Da die CPU nur 8 MB adressieren kann, kann sie auch nur max. 8 MB finden.
Der Testpunkt 70 wird mit einem Fehler beendet, wenn gar kein RAM gefunden wird. Er wird regulär verlassen, wenn kein RAM mehr gefunden wird (minimum 1 Segment = 64k RAM). Ist aber der gesamte adressierbare Bereich mit RAM hinterlegt, kommt es ja nicht vor, dass kein RAM gefunden wird. Bei 8 MB kommt es also zu einem Überlauffehler, und das Ganze geht wieder von vorn los.
Richtig wäre also, den Punkt 70 zu verlassen, wenn kein RAM mehr gefunden wird, oder das Segment 7Fh erreicht wird. (Ist aber nicht der Fall.)
Deswegen habe ich noch ein Nand-Gatter ('030) eingebaut, welcher bei erreichen von Segment 7Fh den Zugriff auf den RAM verhindert.

Die MMUs setzen die logische 23 Bit Adresse (8MB) der CPU auf die physische 24 Bit Adresse (16 MB) um. Dabei ist es vollkommen egal, welches logische Segment der CPU letzendlich wo im RAM liegt. So lese ich das jedenfalls aus der Doku raus.
Demzufolge ist es durchaus denkbar, dass Wega auch 16 MB RAM adressieren könnte. Es muss nur die Übersetzungstabelle in den MMUs ständig anpassen. Ich denke aber mal, dass das nicht gemacht wird.


Wenn sich genügend Interessenten melden, würde ich da auch Platinen anfertigen lassen. Ansonsten lohnt sich der Arbeitsaufwand nicht.
Bei 10 Stück würde die Platine 50 Euro kosten. Bei 20 Stück je 30.
Als DK mit Lötstop und Aufdruck versteht sich. Wenn es nicht ganz 20 werden sollten, wäre es auch ok. Ansonsten müsste sich das jeder selber fädeln. Dafür muss man aber schon eine Woche einplanen.
Wenn es was werden sollte, wird es erst weit nach dem KC-Treffen was werden. Zuerst sind andere Sachen dran.


Zitat:
Olli schrieb
Mehr als 8MB gehen eh nicht von der MMU Konfiguration her...

Das glaube ich so erstmal noch nicht. Wega müsste die ja nur entsprechend (ständig) konfigurieren. Mal davon abgesehen, dass es nicht sinnvoll ist, wenn der RAM halb so gross wie die Platte ist. Ausserdem dauert der RAM Test schon bei 8 MB nervend lang.


Zitat:
Tom Nachdenk schrieb
Na aber der P8000 hat doch 3 MMUs da sollte man doch auf 16 MB kommen können, auch wenn vermutlich die UserMMU der begrenzende Faktor ist. Hier stehen ja nur 64 Segmente zur Verfügung die bei maximaler Ausnutzung aller Segmentgrößen auf 8 MB kommt. Oder wird A23 nicht bedient?

Evtl läßt sich ja der Speicher der oberen 8 MB von einem angepassten Begemot-Treiber benutzen?

Jede MMU kann auf 16 MB Adressraum umsetzen. Lt PLan kümmert sich je eine MMU um Daten, Stack, bzw. Code.


Zitat:
paulotto schrieb
dann sind also wirklich nur maximal 8MB sinnvoll. Zu klären wäre aber noch die Frage, warum bei max 8MB der Fehler bei Enrico auftritt...

Anhand der sehr gut kommentierten Quellen ist es für mich eindeutig ein Softwarefehler.


Zitat:
digger schrieb
Klasse Sache Enrico!

Wenn ich so ein Modul mit 4 MB bestücke und in meinen P8000compact stecken würde, dann hätte ich doch auf einen Schlag 3 Slots frei? .. da würde dann gut die 286er Karte und die noch in Entwicklung befindliche Ethernetkarte reinpassen!

Gruss Frank

Genau. Das waren dabei die 2 anderen Hintergedanken.
Bei den 286iger Karten wäre noch zu klären, wie die genau eingebunden werden.
--
MFG
Enrico

Dieser Beitrag wurde am 19.02.2009 um 19:19 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
19.02.2009, 19:55 Uhr
marko_oette



Da ich nun Besitzer von 2 P8000 bin *grins* melde ich hiermit mein Interesse an 2 30€ Platinen an. Hoffen wir es kommen noch genug dazu.

Gruß

Marko
--
Bitte - wenn nötig - Kontakt via Email, ich bin selten im Forum.

Dieser Beitrag wurde am 20.02.2009 um 00:06 Uhr von marko_oette editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
19.02.2009, 20:09 Uhr
Olli

Avatar von Olli

ich nehme auch 2 30EUR Platinen.. eine zum weglegen
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
19.02.2009, 21:49 Uhr
Rainer



und ich würde auch 2 Stück nehmen, vielleicht bekomme ich ja meine P8000 wieder hin...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
19.02.2009, 22:00 Uhr
Georg

Avatar von Georg

Und ich würde auch zwei Stück nehmen...
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
19.02.2009, 22:16 Uhr
digger

Avatar von digger

Hab gar nich gelesen dass so ein Angebot steht! ... also wenns denn so geht hätte ich auch Interesse an einem Stück.
--
visit:
http://error-404.de
http://hive-project.de
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
19.02.2009, 22:16 Uhr
paulotto



10 Platinen kommen da ja schon mal zusammen. Ich werde meine aber nicht umbauen. Die bleiben original...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
19.02.2009, 22:21 Uhr
Enrico
Default Group and Edit


Wie kann ich denn unter WEGA den RAM anzeigen lassen?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
19.02.2009, 22:22 Uhr
Enrico
Default Group and Edit



Zitat:
paulotto schrieb
Ich werde meine aber nicht umbauen. Die bleiben original...

Das ist ja auch kein Umbau, wenn Du Platinen rausziehst und eine andere reinsteckst.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
19.02.2009, 22:23 Uhr
Enrico
Default Group and Edit



Zitat:
digger schrieb
Hab gar nich gelesen dass so ein Angebot steht! ... also wenns denn so geht hätte ich auch Interesse an einem Stück.

Doch, unter 012 ist ein riesengrosser Text.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
19.02.2009, 22:58 Uhr
paulotto




Zitat:
Enrico schrieb

Zitat:
paulotto schrieb
Ich werde meine aber nicht umbauen. Die bleiben original...

Das ist ja auch kein Umbau, wenn Du Platinen rausziehst und eine andere reinsteckst.

ich laß die halt so wie sie sind, nur reparieren wenn defekt...
Bisher hat der RAM gereicht.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
19.02.2009, 23:03 Uhr
paulotto




Zitat:
Enrico schrieb
Wie kann ich denn unter WEGA den RAM anzeigen lassen?

Du kriegst nur beim Booten die Anzahl der vorhandenen 64k-Segmente angezeigt, z.B. max seg <0F> bei Bestückung mit 4*256k-Platinen oder <1F> bei Bestückung mit 2*1MB-Platine...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
19.02.2009, 23:05 Uhr
paulotto




Zitat:
marko_oette schrieb
Da ich nun besitzer von 2 P800 bin *grins* ...
Marko

wie sind die denn Dir zugelaufen? Und was sind das für Ausführungen?

Gruß

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
20.02.2009, 00:06 Uhr
marko_oette



@024: Habe ich von einem Kollegen bekommen. Nerve Olli schon die ganze Zeit mit meinen Fragen.

Es ist eine P8000 16 Bit und eine Compact. Die Compact habe ich nun wieder so weit einsatzbereit. Da wurde aber nach der Wende die Festplatte gelöscht, sodass ich mir da WEGA neu drauf zaubern muss.

An der P8000 sieht so weit auch alles Okay aus. Am Winchesterbeisteller aber nicht. Erst waren die -12V weg (Kalte Lötstelle) und nun will er trotzdem nicht. Fehler bei Tests 52 / 53. Das ganze Ding ist intern recht Rostig. Da kann also durchaus auf der Platine noch mehr kommen.

Gruß

Marko

PS: Wir können ja per Mail weiter quatschen um Enricos Beitrag nicht zu zu müllen.
--
Bitte - wenn nötig - Kontakt via Email, ich bin selten im Forum.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
026
20.02.2009, 06:51 Uhr
Olli

Avatar von Olli

WEGA zaehlt beim booten den RAM durch und zeigt ihn auch nochmal an.

http://www.siteupload.de/p921163-DSCF0219JPG.html

kernel memory size, user memory size....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
20.02.2009, 08:35 Uhr
Carsten



Hallo,
ich nehme auch zwei Platinen.
mfG
Carsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
028
20.02.2009, 09:38 Uhr
bko



Hallo,
ich wäre auch mit 2 Stück dabei ...

Ciao Bernd
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
029
20.02.2009, 12:40 Uhr
Enrico
Default Group and Edit


13 sind es ja schon, könnten also auch noch 20 werden.


Zitat:
Olli schrieb
WEGA zaehlt beim booten den RAM durch und zeigt ihn auch nochmal an.

http://www.siteupload.de/p921163-DSCF0219JPG.html

kernel memory size, user memory size....

Ich dachte dafür gibt es ein extra Program.
--
MFG
Enrico

Dieser Beitrag wurde am 20.02.2009 um 12:46 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
030
20.02.2009, 13:13 Uhr
Rüdiger
Administrator



Zitat:
Enrico schrieb
13 sind es ja schon,

Jetzt sind's 14.
--
Kernel panic: Out of swap space.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
031
20.02.2009, 13:36 Uhr
Olli

Avatar von Olli


Zitat:
Enrico schrieb

Zitat:
Olli schrieb
WEGA zaehlt beim booten den RAM durch und zeigt ihn auch nochmal an.

http://www.siteupload.de/p921163-DSCF0219JPG.html

kernel memory size, user memory size....

Ich dachte dafür gibt es ein extra Program.

Bei heutigen UNIX Systemen ja - unter WEGA - nein
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
032
20.02.2009, 13:38 Uhr
MichaRa



Da ich ja hoffe irgendwann mal eine defekte P8000 zu bekommen melde ich mich auch für eine Platine an.

Danke und Grüße

Micha
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
033
20.02.2009, 17:56 Uhr
Rainer



jetzt kommt ans Tageslicht, wer alles ne P8000 hat....
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
034
20.02.2009, 18:01 Uhr
Enrico
Default Group and Edit


ja, anscheinend jede Menge. Lauter reiche Leute, einige haben mehrere, dagegen bin ich ja ein armer Schlucker
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
035
20.02.2009, 18:03 Uhr
paulotto



Du hast doch eine, und die besteht sogar aus 2 Türmen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
036
20.02.2009, 18:05 Uhr
Enrico
Default Group and Edit


Schon, aber nur eine. Es soll ja Leute geben, die die Teile bis zur Decke hochstapeln können
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
037
20.02.2009, 23:20 Uhr
digger

Avatar von digger

Jo sieht so aus als wenn auf der RT Seite die "bekannte Stückzahl" deutlich angepasst werden sollte.
--
visit:
http://error-404.de
http://hive-project.de
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
038
21.02.2009, 07:59 Uhr
marko_oette



In letzter Zeit sind einige "neue" (alte) P8000 (wieder) aufgetaucht.

Ich wusste zB. schon seit 2 Jahren, dass mein Kollege etwas in der Art da hat. Dass es nun gleich 2 sind war nicht geplant
--
Bitte - wenn nötig - Kontakt via Email, ich bin selten im Forum.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
039
25.03.2009, 09:04 Uhr
Georg

Avatar von Georg

@Enrico
Gibt es zu diesem Projekt schon was neues?
Wie sieht es mit der Fertigung der Platinen aus?
Könntest du mir die Schaltung schicken?

Danke und Gruß
Georg
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
040
25.03.2009, 17:12 Uhr
Enrico
Default Group and Edit


Ich schrieb ja, dass ich dafür vorläufig keine Zeit habe.
Plan ist nur handgekritzelt.
Und ausserdem muss das ja beim Treffen noch gegen getestet werden.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
041
17.05.2009, 19:52 Uhr
Enrico
Default Group and Edit


Mit dem Layout bin ich nun fast fertig:



Wenn Ihr mir schon mal Geld überweisen und Eure Adresse schicken würdet, geht es nachher um so schneller (per PN). Die Platinenanfertigung dauert ja auch noch 2 Wochen, und Mitte Juni bin ich erstmal nicht mehr da.

Ich denke mal, dass jeder zur Platine auch noch den GAL und die SIMM-Fassungen haben möchte?

Das wären dann zusammen 37 Euro. Dazu der Versand als Postmaxibrief im Karton zu 3,70. Als Paket geht es natürlich auch (8,-)

Ein kompletter Bausatz geht zeitlich nicht.

Den Plan bekommt dann wieder Rüdiger.

Z.Z. sind es 18 Bestellungen.
--
MFG
Enrico

Dieser Beitrag wurde am 17.05.2009 um 20:01 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
042
17.05.2009, 20:23 Uhr
ambrosius



Ich nehme auch eine Platine mit Fassungen und GAL.

mfg

Holger

-------------

Edit: nehme 2 Stck, damit die 20 Platinen mindestens zusammenkommen ;-)
--
viele Grüße
Holger

Dieser Beitrag wurde am 17.05.2009 um 20:24 Uhr von ambrosius editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
043
17.05.2009, 21:49 Uhr
Enrico
Default Group and Edit



Zitat:
ambrosius schrieb

Edit: nehme 2 Stck, damit die 20 Platinen mindestens zusammenkommen ;-)

Das macht nichts, die lasse ich auch so anfertigen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
044
23.05.2009, 02:19 Uhr
Enrico
Default Group and Edit


Bin fertig, Platinen sind bestellt. Hoffentlich kommen die rechtzeitig.


--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
045
30.05.2009, 12:56 Uhr
Enrico
Default Group and Edit


ambrosius 2x
MichaRa 1x
Rüdiger 1x
bko 2x
Carsten 2x
digger 1x
Georg 2x
Rainer 2x
Olli 2x
marko_oette 2x
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
046
09.06.2009, 21:51 Uhr
Enrico
Default Group and Edit


Platinen sind da.
Schnell zusammengelötet, ausprobiert, und funktioniert.
Leider kann ich es nur mit dem Firmwaretest ausprobieren.
Wega geht nicht, da seid dem VCFE entweder der WDC abgeraucht oder
die Platte platt ist.
Die Tage tüte ich alles ein und schick es weg.
Wenn das Wetter die Woche noch besser wird, mache ich auch noch Fotos.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
047
10.06.2009, 19:18 Uhr
Enrico
Default Group and Edit


----------------------
--
MFG
Enrico

Dieser Beitrag wurde am 11.06.2009 um 12:07 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
048
10.06.2009, 22:32 Uhr
Olli

Avatar von Olli

Mir gefaellts!
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
049
11.06.2009, 12:11 Uhr
Enrico
Default Group and Edit


Nochmal, weils Licht heute besser ist:





--
MFG
Enrico

Dieser Beitrag wurde am 11.06.2009 um 12:17 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
050
11.06.2009, 15:27 Uhr
Enrico
Default Group and Edit


Sind unterwegs.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
051
11.06.2009, 22:16 Uhr
Enrico
Default Group and Edit


Noch ein Nachtrag zur Bestückung, weil mich Olli darauf aufmerksam gemacht hatte. Ich schrieb dazu ja nichts weiter. Selbstverständlich kann man bedrahtete Bauteile verwenden. Ich war nur zu faul die rauszusuchen, deswegen sind da SMDs drauf.

Beim Prototyp hatte ich bei jeder Leitung zwischen Rechnerbus und Schaltung 33 Ohm "Angstwiderstände" in SMD 0603 reingeschaltet. Man weis ja nie....

Da ich nicht nur deswegen nochmal extra eine einzelne Platine anfertigen lassen wollte (kostet ja nicht wenig), habe ich beim fertigen Layout auf der Lötseite diese auch wieder vorgesehen. Die Pads sind aber gebrückt.
Also einfach ignorieren.
--
MFG
Enrico

Dieser Beitrag wurde am 12.06.2009 um 11:32 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
052
13.06.2009, 11:15 Uhr
MichaRa



Hallo,

meins ist heute angekommen. Super Qualität! Danke!

Micha
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
053
13.06.2009, 12:09 Uhr
holm

Avatar von holm

Meine auch, bin schon beim bestücken..

Warum hältst Du die Schaltung und den Bestückungsplan eigentlich geheim?

..oder habe ich was nicht mitgekriegt..?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 13.06.2009 um 12:33 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
054
13.06.2009, 12:35 Uhr
Enrico
Default Group and Edit


Wieso?
Hat doch Rüdiger reingestellt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
055
13.06.2009, 12:50 Uhr
MichaRa



Genau, ist alles auf RT online. :-)

Micha
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
056
14.06.2009, 11:40 Uhr
holm

Avatar von holm

Ok, dann hatte ich es wirklich nicht mitgeschnitten, obwohl mit der Text bekannt vorkommt :-)
Man wird halt älter...

Ich habe ein Problem mit der bestückten Platine, ich habe entgegen der Bemerkung im Schaltplan das Ding mit LS-TTL aus der Ramschkiste bestückt, und nun funzt das Ding nicht richtig.
Der Fehler ist aber seltsam, der komplette 74-75 Test wird fehlerfrei durchlaufen, auf die 80er Serie geht durch. Allerdings stoppt der Selbsttest mit einer "9" zum Ausschreiben der 2. Ziffer kommt der Test schon nicht mehr...
Die Kiste bleibt dann einfach mit der 9 am Zeilenanfang stehen.
In p.test.s ist zu finden das die 9er Tests sich um die Korrektheit der Übersetzungstabellen der MMUs drehen, seltsam. Ich weiß noch gar nicht, wo ich da mit der Suche ansetzten soll, zumal die Speichertests an und für sich ja fehlerfrei durchlaufen werden.

Die Propagation Delays von 74HCT und 74LS sind nahezu identisch, probeweises herumspielen mit den Kondensatoren an der Verzögerung bringt auch entweder nur den Zustand geht gar nicht oder geht, wenn geht dann aber 90er Fehler. Ebenso ist das Ganze unabhängig von der Anzahl und der Größe der eingesetzten Simms.

Ich habe den Verdacht, das ich evtl. einen defekten IC eingelötet habe und werde danach suchen. Warum ich kein HCT genommen habe? Ganz einfach, davon waren die entsprechenden im Ramsch nicht zu finden...

Enrico bist Du beim Entwickeln an so einem Bug vorbei gekommen?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 14.06.2009 um 11:42 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
057
14.06.2009, 13:07 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb

Enrico bist Du beim Entwickeln an so einem Bug vorbei gekommen?

Nein, überhaupt nicht. Da war nur der Fehler, wie unter 000.
Aber auch nur 1x.

Ob LS, der HCT sollte von der Verz.zeit egal sein.
Kann aber sein, dass da einzelne LS-Typen nicht den Strom wie HCT liefern können.
Ein paar gibts da ja. Z.B. LS03 /HCT 03.
Dafür gabs dann den LS038.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
058
14.06.2009, 18:28 Uhr
holm

Avatar von holm

Hmm, langsam kriege ich ne Kriese...

Es ist relativ egal, was ich für ICs drauf stecke, der Fehler bleibt der Gleiche.
Stecke ich das 0. 256K Board parallel rein, habe ich bei 2 MB auf einen fehlerfreien Test mit MAXSEG=<1F>
Ich habe noch nicht probiert damit ein WEGA von der Diskette anzubooten, weil das 16Bir Bord derzeit einzeln auf dem Tisch liegt, habe aber den Verdacht das das wohl nicht gut ausgehen würde...
Abgesehen von den Multiplexern 47LS253 von denen ich nur LS TTL da habe,
habe ich alles Andere mittlerweile gegen andere Sorten TTL ICs getauscht (74S, 74H, 74ACT, 74ALS, 74AS usw). Der Fehler ist identisch, genauso egal ist es was fü eine Sorte SIMS ich drauf stecken bis auf ein paar 1MB von OKI die gar nicht wollen (möglicherweise defekt) läuft das Alels auf das Selbe heraus.

Ich habe sfrüher schon DRAM Karten aus 16Kbit Schaltkreisen und CUL Draht gebastelt und weiß das die Teilweise kritisch einzustellen sind, aber das hier nervt echt..
Der RAMtest läuft durch aber wen nscheinbar ein Programm aus dem RAM ausgeführt wird, hängt es sich weg. Die 256K Karte hilft das zu umgehen, da sie scheinbar richtige Daten liefert. Hat noch Jemand eine Idee?

Gibts beim Z8000 eigentlich so einen zeitkritischen CPU Zyklus wie M1 beim Z80?
Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 14.06.2009 um 18:29 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
059
14.06.2009, 19:30 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb

Gibts beim Z8000 eigentlich so einen zeitkritischen CPU Zyklus wie M1 beim Z80?
Gruß,

Holm

Wenn ich das richitg deute, sieht es nicht danach aus. /MREQ ist 2 Takte lang.
CPU hat zwar Multiplex Bus, auf den Kartensteckplätzen ist das aber alles auseinanderklamüsert.

Ev. hilft es wenn Du die Widerstände zum Bus hin reinschaltetest.
Ich kann leider auch nicht mehr sagen, als dass es bei mir funktioniert.

Aufm Treffen hatten wir den Prototyp in Ollis P8000 und in einer Compact ausprobiert. Was einmaliges ist es also nicht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
060
14.06.2009, 20:19 Uhr
Rainer



@Holm, ich habe gepackt, alles vollständig und mit wenigen Schrauben geheftet, so das du nicht viel zu schrauben hast. Damit hättest du dann die Möglichkeit wenn das 16 bit Board wieder gehen sollte deinen RAM in meiner P8000 zu testen, vielleicht ist an deinem P8000 Board doch noch was anders als bei den Testopfern wo der Prototyp probiert wurde? Achja, bevor ichs vergesse, eigentlich wollte ich dir nen Zettel mit reinlegen, bei meiner P8000 ist die TXD/RXD Leitung der Konsole vertauscht, beim 8bit Board wie auch beim 16bit Board! Zumindest zu dem Vergleichsgerät was ich hier stehen habe...
In dem Beutel sind fast alle niedrig integrierten Schaltkreise und Sockel drinn, da kannst du dich bedienen, mußt ja nicht deine Vorräte alle machen.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
061
14.06.2009, 20:48 Uhr
paulotto



RXD und TXD wurden, glaub ich, beim Umstieg von der P8000 zur Compact getauscht, sodaß sie dem internationalen Standard entsprechen. Ist jedenfalls in meinem Handbuch noch eine weitere Tabelle drin mit der neuen Belegung der Terminalbuchsen. Ich hatte mir mal von Olli die Belegung seines Kabel geben lassen und dann diesen Unterschied festgestellt und darauf hin meine Kabel Untersucht und nochmals genau im Hanbuch nachgelesen...

Gruß

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
062
14.06.2009, 21:51 Uhr
Rainer



ich habs beim vergleichen gemerkt, da ich meine seriellen Leitungen zum PC mit LED's überwache. Also habe ich warscheinlich doch was ziemlich seltenes, eine alte P8000 mit Compact Platinen....
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
063
14.06.2009, 23:38 Uhr
holm

Avatar von holm

Das mit dem Kabneln kenne ich, die neue und die alte 8 Bit Platine haben unterschiedliche Belegungen. Sowas foppt mich nicht mehr :-)

@ Enrico: meine Forscherei mit der Platine ist heute ergebnislos verlaufen,
ich kann machen was ich will..

Ich habe noch die /$LS253 gegen K555KP12 getauscht, die funktionierten ohne Pullups an den Ausgängen gar nicht. (habe ne Stange von da, alles gleich).
Ein paar 74S153 gingen wieder ohne, aber liefen auf den selben Fehler auf...
Ich habe auch den 74ls05 gegen den originalen 4706 mit anderen Widerlingen getauscht, the same procedure as every test..

Ich habe 74HCT bestellt aber das seltsame Bauchgefühl das das am Problem nichts ändern wird. Die Angstwiderstände habe ich in den AD0-15 schon drin.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
064
15.06.2009, 20:15 Uhr
Olli

Avatar von Olli

Hi Enrico,

eine Frage noch - U17, die Dioden und deren Widerstaende muessen nicht bestueckt werden, oder?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
065
15.06.2009, 21:00 Uhr
holm

Avatar von holm

Wenn U17 der 541 ist kannst Du das sicher weglassen, sieht halt technischer aus...
Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
066
15.06.2009, 21:06 Uhr
Olli

Avatar von Olli

ok, dann spare ich das in meiner ersten Version erstmal ein
Muss aber eh bestellen.... mir sind doch tatsaechlich die 16 poligen Fassungen ausgegangen....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
067
15.06.2009, 21:30 Uhr
Georg

Avatar von Georg

Heute bekam ich auch mein Päckchen, sieht alles sehr gut aus.
Ich habe auch gleich eine zusammengelötet nur testen kann ich sie noch
nicht. Ich musste erst mal einige 7405 bestellen so was habe ich noch nie gebraucht…

Besten Dank und Gruß
Georg
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
068
15.06.2009, 21:37 Uhr
holm

Avatar von holm

Wenn Ihr eh Fassungen drauf baut könnt Ihr auch einen 74iHCT06 (wenn es den denn gibt) ausprobieren.
6 Inverter open Kollektor halt. Im Original lungert dort auch ein 7406 allerdings arbeitet der gegen Pullups von 330 Ohm.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
069
16.06.2009, 11:14 Uhr
holm

Avatar von holm

Enrico kann ich bitte den Inhalt des GALs mal haben?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
070
16.06.2009, 13:30 Uhr
Olli

Avatar von Olli

Waere glaub ich ganz gut wenn der auch auf der Homepage landet - falls es einer in Eigenregie nachbauen will.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
071
17.06.2009, 21:09 Uhr
Olli

Avatar von Olli

Stoert es wenn ich den 74hct05 durch n 74ls05 ersetze? Bekomme den bei reichelt nicht mehr als HCT.

EDIT: diese 47pF Kondensatoren... was nimmt man da? reichelt hat mit der Kapazitaet nur Glimmer-Kondensator, 47pF, 100V, +/- 5% fuer stolze 64 Cent das Stueck.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 18.06.2009 um 17:19 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
072
19.06.2009, 16:29 Uhr
holm

Avatar von holm

Es stört nicht.
ICh habe eben die HCT ICs bekommen (bestelle ja auch nicht bei Reichelt) und im Endeffekt alles an Lowpoer Shottky wieder drauf gesteckt bis auf die 74HCT245.
Nur wenn diese als HCT bestückt sind läuft das Board. Das schiebe ich aber weder auf deren Stromlieferfähigkeit noch auf die Verzögerungszeit dieser Dinger, denn die 74S245, 74AS345 und die 74F245 die ich ausprobiert habe, hätten das auch machen müssen. Ich gehe davon aus, das in dem GAL ein Bug steckt, Enrico scheint aber offline zu sein, er deutete sowas mal in einer Mail an..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
073
19.06.2009, 21:07 Uhr
Enrico
Default Group and Edit


Den 06 gibts nicht als HCT, ich glaube nicht mal LS. Deswegen der 05. Sind beides Open Kollektor, der 06 hat nur eine höhere Spannungsfestigkeit. Deswegen ist das da egal.

GAL-Inhalt kann ich nicht schicken, bin die nächsten Wochen nicht da.

47 pF irgendwas billiges keramisches.


Holm, wie gesat, mit LS hatte ich das gar nicht ausprobiert. Aber ACT hatte ich einige drauf. Damit ging es auch.

Dass die Pads der SMD-Widerstände Richtung Bus gebrückt sind, hattest Du doch sicherlich gesehn?

Wenn der Fehler in GAL wäre, wäre es doch egal ob HCT oder LS. Dann würde es doch gar nicht gehen. Die sind in der Logik und Belegung identisch.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
074
20.06.2009, 00:46 Uhr
holm

Avatar von holm

Der RAM Test als Solcher läuft auch mit 74LS durch, es knallt nur bei den nachfolgenden Tests mit MMU. Ich habe keine Ahnung was das für ein Fehler ist,
habe aber die Zeitverzögerung ausreichend variiert und weiß ds es daran nicht klemmt.
Mit ist noch nicht klar woher der Fehler kommt, aber 74HCT kann nicht der einzige funktionierende Bustreiber sein...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 20.06.2009 um 14:34 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
075
20.06.2009, 12:03 Uhr
Enrico
Default Group and Edit


Stimmt. So schnell ist der Rechner ja nicht.
Weis der Geier, wie das kommt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
076
20.06.2009, 14:39 Uhr
holm

Avatar von holm

Ich vermute mal, ohne Dich irgendwie ärgern zu wollen, dass die Treiber bei irgendwelchen Buszuständen aktiv werden, bei denen sie aber nicht gefragt sind,
(Wasweisich, Traps oder Interrrupt o.Ä.) und die 74HCT sich doch breitschlagen lassen,
wenn ein STTL Treiber irgendwas sendet. Im Endeffekt kannst nur Du das kontrollieren, da außer Dir Niemand weis, was im GAL steht.
Andererseits liefen je abi mir die Tests durch, wenn ich zusätzlich eine auf Segment 0 stehende originale RAM Karte dazugesteckt habe. Irgendwas ist da sehr sehr seltsam.

Das Ganze ist aber wirklich nur eine Vermutung, ich kenne den Z8K Bus auch nicht gerade so wie meine Westentasche...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
077
20.06.2009, 18:31 Uhr
holm

Avatar von holm

Das Ganze ist sehr warscheinlich ein Refresh Problem.
Ich habe mal den Speicher von Segment 7 mit 55AA gefüllt:

*F <7> 0 200 55AA
*D <7> 0 100
<07>0000 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0010 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0020 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0030 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0040 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0050 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0060 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0070 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0080 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0090 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00A0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00B0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00C0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00D0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00E0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00F0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0100 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0110 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0120 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0130 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0140 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0150 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0160 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0170 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0180 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0190 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>01A0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>01B0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>01C0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>01D0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>01E0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>01F0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*

Schick.

Nach ein paar Minuten:
*D <7> 0 100
<07>0000 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0010 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0020 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0030 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0040 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0050 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0060 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0070 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0080 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0090 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00A0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00B0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00C0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00D0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00E0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>00F0 55AA 55AA 55AA 55AA 55AA 55AA 55AA 55AA *U.U.U.U.U.U.U.U.*
<07>0100 55AA FFFF 55AA FFFF 55AA FFFF 55AA FFFB *U...U...U...U...*
<07>0110 55AA FFBF 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0120 55AA FFFF 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0130 55AA FFFF 55AA FFFB 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0140 55AA FFFB 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0150 55AA FFFB 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0160 55AA FFFF 55AA FFBB 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0170 55AA FFFF 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>0180 55AA FFFF 55AA FFFB 55AA FFFF 55AA FFFB *U...U...U...U...*
<07>0190 55AA FFFF 55AA FFEF 55AA FFFF 55AA FFBF *U...U...U...U...*
<07>01A0 55AA FFFF 55AA FFFF 55AA FFFF 55AA FFFB *U...U...U...U...*
<07>01B0 55AA FFFB 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>01C0 55AA FFFB 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>01D0 55AA FFFF 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>01E0 55AA FFFF 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*
<07>01F0 55AA FFFB 55AA FFFF 55AA FFFF 55AA FFFF *U...U...U...U...*



Wasn hier los?

Es stecken 4 1MB 9er Module von Siemens auf der Karte.
Es versteht sich natürlich von selbst, das die RAS Leitung (27) der Module nicht unterbrochen ist. Die SIMS sind mit HYB511000BJ-60 bestückt, die einen 9 Bit Refresh wollen.
Alle ICs bis auf den DL541 sind indessen mit HCT bestückt.
Sämmtliche Adreßleitungen zu den Multiplexern und von dort weg zu dem SIM Fassungen habe ich bereits überprüft, irgendwie kriege ich das gerade nicht auf die Reihe..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
078
20.06.2009, 22:18 Uhr
holm

Avatar von holm

Enrico mit welcher Verknüpfung zählst Du den Adreßcounter für die Hilfs-Refreshadressen hoch?

Mein LA sagt, das der Zählt, obwohl A8 noch nicht getoggelt hat.
Der Z8001 erzeugt 9 Bit Refreshadresse, d.h. von A0 bis A8.
A0 fällt weg und kommt nicht bei den RAMs an, die auch 9 Bit brauchen.
A8 vom Prozessor landet also auf A7 der RAMs, A8 Der RAMs entweder auf A9,A19 des Prozessors, oder PFZ0 des Hilfszählers, der aber taktet zu schnell, demzufolge
gibts Lücken im Refreshadreßraum. Du führst zwar die Prozessoradresse A8 warscheinlich extra zu diesem Zweck in das GAL, aber dessen Ausgang toggelt oft mit jedem Refreshzyklus, womit genau, kann ich derzeit schlecht feststellen, die Speichertiefe des Tek 7D01 den ich da dran habe reicht nicht so ohne Weiteres dafür aus.
Das Dein Speicher funktioniert ist eine Art Zufall... oder Du hast einen anderen GAL Inhalt, oder Diene DRAMS haben internen Refresh.

... ich weiß jetzt was Du machst. Immer wenn A8 im Refreshzyklus H ist, gibst Du einen Low Impuls an den Counter aus, allerdings einen Impuls und keinen Pegel. Du mußt das Signal latchen...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
079
20.06.2009, 23:12 Uhr
Enrico
Default Group and Edit


Mist. Sollte ich da doch einen Wurm reingebracht haben?
Bin nur dieses WE zu Besuch bei meinen Eltern, und kann dazu überhaupt nix sagen. Mit A8 ist richtig. Bei /RFSH, /MREQ und A8 soll der Zähler eins weiter zählen. Wie genau, weis ich jetzt auch nicht. Ich habe ja nichts dabei. Und ab Montag wieder zum Lehrgang.
Einen GAL-Dissasembler gibts wohl nicht? Lese geschützt sind die ja nicht.

Ich hatte das aber auch mit mehreren verschiedenen RAMs ausprobiert.
Mal gucken. Auf die Schnelle wird das nichts mehr.
--
MFG
Enrico

Dieser Beitrag wurde am 20.06.2009 um 23:45 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
080
20.06.2009, 23:50 Uhr
holm

Avatar von holm

Na aus der Fusemap wieder die Quelle machen zu wollen ist "e Bissel Streß" (*grusel*). Ich müßte auch erst mal erforschen, ob der GALEPIII den ich mir zugelegt hatte mit 22V10 umgehen kann (denke schon) mein alter Eigenbauprogrammer kan nur 16V8 und 20V8 und davon auch nur die B Versionen. Mft. das GAL habe ich eingelötet und nicht auf Fassung.

Die RAMs funktionieren alle irgendwie einwandfrei, der RAMtest lief ja auch immer durch, das Problem ist dann nur, das der Inhalt in bestimmten Bereichen ohne Zugriff verschwindet..
Ich habe ja auch ne ganze Weile gebraucht um hinter das Problem zu kommen, habe ziemlich blöde auf das Bild das Analyzers gestiert bis mir aufging woran das liegen könnte...
Da wird das mit dem GAL halt noch eine Weile warten müssen, oder Jemmnd
erfindet das Fahrad neu. (Ich habe echt keine Lust mir Deinen Kopf nochmal zu zerbrechen, es wartet ja auch genügend andere Arbeit, bin aber froh das Mysterium aufklären haben zu können).

Mit den Texten hier habe ich kein Problem, das ist hier ein alter Feuerfuchs...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
081
21.06.2009, 10:08 Uhr
Enrico
Default Group and Edit


Ich habe die Nacht nochmal drüber gegrübelt. Nach dem, was Du da mit dem LA gemessen hast, ist das so. Mit A8, /MREQ und /RFSH kommt das Signal für den Zähler.
Da habe ich einen ziemlichen Denkfehler reingebracht.
Asche auf mein Haupt!
Das kann so nicht gehen.
Denn A8 wird ja nach der Hälfte des Refreshzyklus H. Ab da wird der Zähler also bei jedem Refresh um 1 hochgezählt.
Ist also total falsch.

Als Bugfix müsste da also noch ein weiteres IC rein. AND Gatter oder Nor-Gatter mit 8 Eingängen. Die Eingänge auf die Adressen 1 bis 8, Ausgang auf den GAL. Dann müsste das richtig sein. Dann wird der Zähler zum Ende bzw. Anfang um 1 erhöht. AND mit 8 EIngängen gibts aber glaube ich nicht. Da müsste dann nch ein Inverter dahinter.

Holm, könntest Du das bitte mal ausprobieren, und dann als offizielles Bugfix bestätigen?

Entschuldigung, an Alle!

Komisch, dass es nicht mal unter WEGA aufgefallen ist.
--
MFG
Enrico

Dieser Beitrag wurde am 21.06.2009 um 10:09 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
082
21.06.2009, 10:30 Uhr
holm

Avatar von holm

Das wird so immernoch Nichts, man muß A8 zwischenspeichern, da daswas aus Deinem AND Gatter kommt auch ständig die Pegel wechselt (Multiplexing) so das der Zähler hinten auch wieder Imulse sieht.
Ich zerbreche mir gerade die Birne wie man das mit dem ungenutzen halben 7474 irgendwie gebacken bekommt, so Adresse A8 an D und nur bei aktivem Refresh mit Clock an T die Adresse übernehmen, am Ausgang müßte dann eine Stabile Refreshadresse A8 anliegen die auf den Zähler gehen könnte. Ich muß mir nur noch einen Kopf machen, woher ich das Clock Signal bekomme.

Wegen Deiner Entschuldigung: Shit happens. Und wenn ich mir die P8000 Platinen so ansehe müßte irgend Jemand ständig am entschuldigen sein...

Gruß,

Holm

Update: Hier mal ein Bild vom LA:



Von Oben nach unten:

/RAS (U13-5), /RFSH (U9/7), /AS (U13-3), /MREQ (U14-1)

A8 (U9-13), nix relevantes, MA9 (U10-9),MA7 (U8-12).

Das da "nix relevantes" steht, liegt daran, das das Bein am Ausgang des 2. Flipflops liegt, dort aber nichts kommen kann, da die Steueranschlüsse von dem Ding alle an H liegen.

Interessant ist nur der obere Teil und A8. /RFSH=L und die L/H Flanke von /MREQ müßten eigentlich reichen A8 einzufangen...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 21.06.2009 um 11:00 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
083
21.06.2009, 14:39 Uhr
holm

Avatar von holm

Sooo....

Es sieht aus als ob es funzt :-)

Ich habe ein Gatter von einem 74LS02 mit Den Eingängen jeweils an /MREQ und /RFSH angeschlossen. Der Ausgang dieses Gatters geht an den Takteingang (11) des brachliegenden 2. Flipflops des 74HCT74. Dazu müssen aber die Anschlüsse 13,12 und 11 von VCC abgetrennt und vereinzelt werden. Diese Brücken liegen auf der Bauelementeseite und lassen sich evtl. mit einem Scharfen Messer durchtrennen.
Der Anschluß S (10) ist wieder mit VCC (14) zu verbinden. Der Data Eingang des FLipflop (12) wird mit A8 am GAL (13) verbunden.Die Verbindung vom GAL (20) zum Takteingang des Zählers(5) ist aufzutrennen. Der Takteingang des Zählers (5) wird mit dem Ausgang Q (9) des 74HCT74 verbunden. Dann klappts auch mit dem Refresh.

Erklärbär:

Mit dem FlipFlop wird die gemultiplexte Refreshadresse A8 an dem Zeitpunkt an dem /MREQ und /RFSH gleichzeitig L und werden iund danach /MREQ wieder H wird zwischengespeichert. Es ist bis zu dem nächsten Übernahmezeitpunkt also völlig Wurscht was A8 macht, Der Ausgang des Flipfliops toggelt also nur, wenn auch die Refreshadresse A8 sich ändert.
Der Ausgang wird benutzt um den Zähler für die höherwertigen Adressen zu befeuern so das dieser auch seinen vorgesehenen Zweck erfüllt.


Wenn Enrico einen neuen GAL Inhalt erstellt kann der zusätzliche 74ls02 entfallen, Enrico Du müßtest dann am GAL Das Signal A8 durch /MREQ ersetzen und ein NOR
mit /RFSH auf den Ausgang 20 programmieren. Dann kann das PIN 20 das Flipflop steuern.

Ich habe zwar jetzt immernoch ab und an Hänger nach dem Speichertest (Error 97)
schiebe das aber auf das Timing. (oder die Tatsache das nur 4,73V am Board anliegen weil die Spannungsversorgungsstrippen meines Testaufbaus zu dünn sind) Ich werde Euch auf dem Laufenden halten.
Auf alle Fälle bleiben die Daten jetzt im Speicher.

Vorschlag für Version 2:

Autonomer (kompletter) Refreshcounter der durch das externe Refresh Signal erhöht wird, Auswertung der Parity Bits, dafür kann evtl. das Mäusekino entfallen.
Ggf. kann man das mit dem Counter so machen wie bisher, aber dann einen Typ mit Gated Clock raussuchen ('169 oder so).

Übrigens wegen WEGA: Ich halte das gar nicht für unwarscheinlich, das OS ist ständig im Speicher unterwegs und damit ist die Warscheinlichkeit hoch, das die Refreshbedingungen eingehalten werden, zumal ja die RAMS besser sind, als Ihre Datenblätter vermuten lassen. Ich habe Minutenlang warten müssen um solche Anzeigen wie den leeren RAM oben zu zeigen und das geht scheinbar nur mit dem Monitor. Was mich nach wie vor noch stört ist eine gewisse "Unzuverlässigkeit" bei diesen MMU Tests und die Tatsache das nach wie vor 74LS245 als Bustreiber nicht funktionieren, schaunmermal..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 21.06.2009 um 15:00 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
084
21.06.2009, 18:08 Uhr
holm

Avatar von holm

Enrico nochwas:
Bei der Forschung was hier mit dem hängenbleibenden MMU Test sein könnte, bin ich auf einen Unterschid Deiner Adreßdecodierung zu den originalen RAM Platinen gestoßen. Bei der Originalen RAM Platine geht das unverzögerte /MREQ Signal in die Freigabe der Adreßbustrieber mit ein, bie Dir nicht, sondern dieses RASEN. (logisch, war kein PIN mehr qam GAL frei). Ich verwette meinen Arsch, das hier der Hase im Pfeffer liegt und werde mal versuchen das MOE Signal noch mit /MREQ zu verknüpfen.
Also wenn Du wiedermal über Deine GAL Quellen stolperst, guck mal bitte nach..
ch denke das ist die Ursache, warum dier Test unzuverlässig funktioniert und das auch nur mit den HCTs. Ich habe mal wieder 74F245 draufgesteckt und die Dinger gehen zuverlässig gar nicht. Es klemmt immer an der selben Stelle.

Update.. Nö, das wars nicht! Scheiße Arsch weg...


Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 21.06.2009 um 18:18 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
085
21.06.2009, 18:53 Uhr
Enrico
Default Group and Edit


Bevor ich wieder verschwunden bin:

Deine Schaltungsänderung mit dem '74 ist natürlich wesentlich besser, da keine weiteren ICs drauf müssen.
Aber wieso sollte es mit dem AND oder NOR Gatter nicht gehen?
Wenn Die Adressen A1-A8 alle H oder L haben, ist bei /MREQ (bzw. RASEN) und /RFSH ein Refreshzyklus rum, und der Zähler kriegt einen Impuls.
Das müsste doch richtig sein.

Noch ne andere Idee. Hast Du das jetzt immer nur mit Deinem Brikett-Board ausprobiert? Kann sein, dass sich da parasit. Kapazitäten oder Widerstände gebildet haben.
Du also 2 Baustellen hast.
--
MFG
Enrico

Dieser Beitrag wurde am 21.06.2009 um 18:54 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
086
21.06.2009, 21:16 Uhr
holm

Avatar von holm

Ja, Du hast schon Recht, wenn Du diesen einen Refreshzyklus voll ausdecodierst, bekommst Du das auch gezählt, ist aber jede Menge zusätzlicher Fitz..

Zu 2.: Ich hatte in der Zwischenzeit Rainers 16 Bit Board zur Reparatur hier, dieser Spezielle Fehler war dort identisch. Irrigerweise hatte ich angeniommen, das die Refreshproblematik dieses Problem mit dem Test (97) löst, dem ist aber nicht so, das ist ein 2. Paar Schuhe. Der RAM Test lief ja auch mit beiden Boards durch.
Rainer hatte eine andere Firmware drauf als ich (3.0 ich habe 3.1) der Hauptunterschied war, das Rainers Board den Fehler 97 ausschreib und meins bei der 9 stecken bleibt. Evtl programmiere ich noch einen 2. Statz ROMS (Danke Holger!) und verifiziere das nochmal.
Ich habe nur Rainers Board nicht mit den 74HCT ICs ausprobieren können, die waren da simpel noch nicht hier. Mit den originalen RAM Platinen liefen beide Boards, wenn ich bei Deiner RAM Karte eine originale dazu stecke (nur das 0. Board) funktioniert der Test 97 auch.

Ich vermute mal, das bei diesen MMU Trap Tests Deine Decoderlogik irgendwann aktiv wird, wenn sie eigentlich nicht gefragt ist und der Rechner im Trap Handler abstürzt. Es geht 5 Tests mit dem Monitor gut und dann hängt sich das Ding wieder auf (nur mit 74HCT245!). Wenn ich die 74LS, 74F, 74ALS usw 245 reinstecke klemmt es an dieser Stelle jedes Mal.

Ich habe ehrlich gesagt keinen Bock darauf, Deine ganze Arbeit noch mal zu machen, Du hast Dich da mit der Decodiererei tiefer reinknien müssen, als ich das bisher getan habe. Ich dachte ich warte mal bis Du wieder an Deine GAL Geschichten ran kommst und wir gucken mal gemeinsam drüber.
Wenn Du das NOR Gatter in den GAL verlegst wie ich es vorgeschlagen hatte, liegt ja auch /MREQ statt A8 an, damit kannst Du die Treiberfreigabe analog der Logik der Originalboards programmieren. Ich hoffe, das das dann auch dieses Problem beseitigt. Ich kann mir wirklich keine andere Ursache für dieses LS vs. HCT Verhalten vorstellen als entweder Zeitprobleme oder aber die Tatsache das MEISTENS der "richtige" Bustreiber gewinnt.

BTW: Je ein weiteres 8 und 16Bit Board sollten auf dem Weg zu mir sein. Compact-Boards, womit für mich die Notwendigkeit entfiele diese blöden Bleche nachzubauen...
Selbverständlich werde ich das Ganze auch damit ausprobieren und das Maul aufmachen wenn die Sachlage anders sein sollte. Vorläufig weiß ich nicht weiter.
Ich könnte höchstens parallel zum GAL die Decoderlogik per Hardware aufbauen und testen, würde das aber lieber mit Dir zusammen machen.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
087
22.06.2009, 10:19 Uhr
paulotto



ich habe bei der defekten Speicherplatine immer eine Ausschrift mit Trap usw. bekommen (Anfrage schon mal in einem anderen Thread hier). Das war auch im Hardwaretest. Deshalb vermute ich mal, daß es keine Trapgeschichte ist...

Gruß

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
088
22.06.2009, 10:50 Uhr
holm

Avatar von holm

Hee Klaus! Guten Morgen!

Damit eine defekte Speicherkarte einen Trap auslösen kann, muß doch wohl erst mal einer ausgelöst werden. Dazu haben die Originalplatinen einen Parity Check on Board, Enricos Platine hat das nicht!

Ergo gibts keinen Trap bei defekter Speciherplatine...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
089
22.06.2009, 19:12 Uhr
paulotto



das wußte ich nicht, daß Enicos Platine keinen Parity-Check hat...

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
090
22.06.2009, 20:29 Uhr
holm

Avatar von holm

Das dachte ich mir schon :-)

Währe mir auch lieber gewesen als die Leuchtdioden die jetzt drauf sind.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
091
24.06.2009, 22:31 Uhr
Olli

Avatar von Olli

Ich denke ich warte mit dem Aufbau erstmal bis ihr das ausgekaspert habt ob neuen GAL + bissel Platine rumritzen oder alter GAL + rumritzen und Freiluftverdrahtung oder?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
092
25.06.2009, 19:08 Uhr
Georg

Avatar von Georg

Heute kam nun endlich meine Bauelementebestellung.
Den fehlenden 7405 in seine Fassung gedrückt und 4 x 1MB RAM gesteckt und so konnte der 1. Test starten.
Der Speichertest dauert ja ewig….. (74 75 74 75…….)
Max Seg< 3F>
Und Wega startet.
Bei Bestückung mit 2 oder 4 x 4 MB blieb bei mir der der Selbsttest bei 97 stehen.
Bei der Bestückung der 2. Karte werde ich die beschriebenen Änderungen mit einarbeiten.
Schauen wir mal….

Gruß
Georg
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
093
25.06.2009, 20:58 Uhr
holm

Avatar von holm

Du hast jetzt einen tollen Speicher der weinen Inhalt vergißt...
Das Problem mit der 97 ist von Deinen Ausgangstreibern abhängig, die Treiber auf dem Mainboard können mehr L Strom ab und gewinnen beim noch nicht gefundenen Kurzschluß..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
094
28.06.2009, 23:23 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Damit eine defekte Speicherkarte einen Trap auslösen kann, muß doch wohl erst mal einer ausgelöst werden. Dazu haben die Originalplatinen einen Parity Check on Board, Enricos Platine hat das nicht!

Mit der Parität hatte ich auf einer Platine mal erhebliche Probleme. Schuld war aber nicht der RAM, sondern der russ. 74S280.

Ausserdem scheint mir das bei den SIMMs auch nicht so sinnvoll, da die Schalutng ja doch nur einen Reset auslösen würde.
Die SIMMs sind ja viel schneller, dürften von der Qualität her auch besser sein.
Hinzu kommt noch, dass da nicht unbdingt RAM fürs 9. Bit drauf sein muss.
Das kann auch ein Paritätsgenerator sein, oder sogar nur ein leeres Gehäuse.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
095
28.06.2009, 23:26 Uhr
Enrico
Default Group and Edit


Heute habe ich mal noch schnell was ausprobieren können. Mit HCT245 geht der Speichertest fehlerfrei. Egal ob mit 2, 4, 8 oder 16 MB bestückt.
Das Refresh-Problem habe ich auch. Test unter 077 von Holm.

Mit LS245 geht der Speichertest auch fehlerfrei, bleibt aber bei der 97 MMu-Test stehen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
096
28.06.2009, 23:31 Uhr
Enrico
Default Group and Edit


Was auch immer das heisst:


Quellcode:
!fuer Testschritt 95 und 97!
L1834:
    incb    rh2, #%01
    cpb    rh2, #%40
    jr    nz, TST_CODE_MMU !naechste logische Segmentnummer!

                !alle Segmentnummern abgearbeitet, d.h.
                 naechster Testschritt!

!---------------------------------------------
Testschritt 97 (0312 'S')
Test, ob CODE-MMU beim Limit-Test Trap erzeugt
---------------------------------------------!
!
--- Fehler 97, wenn CODE-MMU beim Limit-Test keinen Trap erzeugt ---
!

L183C:
    decb    rl3, #%01    !rl3=1, d.h. Kennzeichnung Testschritt 97;
                 rl3=0, d.h. Testschritt 97 beendet!
    testb    rl3
    jr    z, MMU_TEST_END    !Ende des Testes!

L1842:
    ld    r8, #%97    !Fehler 97: No Trap On Code MMU Limit Test!
    xorb    rh1, rh1    !Flagbyte rh1 loeschen!
    calr    WR_TESTNR    !Ausgabe der Testschrittnummer!

    push    @r15, r3
    ld    r3, #MMU_LISTE5    !r3 - Zeiger auf SDR-Feld fuer CODE-MMU!
    ld    r4, #MMU_LISTE4    !r4 - Zeiger auf SDR-Feld fuer DATA-MMU!
    ld    r5, r4        !r5 - Zeiger auf SDR-Feld fuer STACK-MMU!
    calr    LD_3SDR        !SDR der 3 MMU's programmieren!
    pop    r3, @r15

    xor    r2, r2        !rh2=logische Segmentnummer (0-63)!
    ld    r5, #%AAAA    !ueberfluessig ???!
    jr    TST_CODE_MMU

L1866:
    test    REM_MMU_ID    !Segment-Trap (Routine CODE_TRAP) aufgetreten?!
    jr    nz, L1834    !ja, d.h. kein Fehler;
                 naechste Segmentnummer!

    ld    ERRPAR_ID, #%0090 !Fehlerparameter fuer Fehler 97: r6, rl7 !

    jr    L1880        !Fehlerausgabe!



--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
097
29.06.2009, 06:28 Uhr
Olli

Avatar von Olli

Hi,

wirds ne Umbauanleitung geben? Mit oder ohne neuem GAL....?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
098
29.06.2009, 11:11 Uhr
holm

Avatar von holm

Nur die Ruhe, Du weißt was ich mache :-)

Enrico hat mir indessen den GAL Inhalt geschickt, ich bin aber noch nicht dazu gekommen da großartig drüber nachzudenken...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
099
29.06.2009, 17:44 Uhr
Enrico
Default Group and Edit



Zitat:
Olli schrieb
wirds ne Umbauanleitung geben?

Ja.

Zitat:
Mit oder ohne neuem GAL....?

Warscheinlich mit.

So nebenbei muss ich die Bestellungen fürs M052 so langsam vorbereiten.
Ausserdem bin ich die nächsten 2Wochen wieder weg.

Mal sehen, wie weit ich da komme.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
100
29.06.2009, 19:26 Uhr
Olli

Avatar von Olli

Jojo... keine Panik - bin ja eh z.Zt. mit meinem AC1 beschaeftigt und habe ja auch noch das defekte P8000 RAM wo ich nicht weiterkomme. Noch habe ich die Woche viel zu tun auf Arbeit so das ich eh nich zu viel kommen werde - drueckt ja auch nicht - wollte nur nachfragen
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
101
29.06.2009, 22:48 Uhr
Enrico
Default Group and Edit



Zitat:
Enrico schrieb
Heute habe ich mal noch schnell was ausprobieren können. Mit HCT245 geht der Speichertest fehlerfrei. Egal ob mit 2, 4, 8 oder 16 MB bestückt.
Das Refresh-Problem habe ich auch. Test unter 077 von Holm.

Mit LS245 geht der Speichertest auch fehlerfrei, bleibt aber bei der 97 MMu-Test stehen.

Beim Prototyp siehts genau so aus.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
102
29.06.2009, 23:21 Uhr
holm

Avatar von holm

Ich werde morgen mal gucken. Einen GAL Assembler habe ich gefunden der Dein File versteht, also werde ich erst mal das S02 Gatter einbauen für den Refreshzähler und danach über die Unterschiede der CAS Geschichten zwischen original und Deine Platine nachdenken. Wen n A8 am GAL (läßt sich übrigens noch lesen und schreiben) wegfällt und statt dessen für das NOR Gate MREQ auflegt, kann man das wie im Original mit ranziehen..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
103
30.06.2009, 00:07 Uhr
Enrico
Default Group and Edit


Damit hatte ich ich vorhin gerade angefangen.
Dann brauche ich also nicht mehr weitermachen?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
104
30.06.2009, 08:06 Uhr
holm

Avatar von holm

Klar kannst Du weiter machen, ich muß mich erst mal ums Brötchen verdienen kümmern...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
105
30.06.2009, 13:30 Uhr
holm

Avatar von holm

Hmm, ich habe ein Bisschen experimentiert. Die Refresh Geschichte ist kein Problem und funktioniert auch im GAL primstens. Was belibt und sich nicht vertreiben läßt, ist dieser Error 97.
Es scheint, das das Problem nur in Verbindung mit einem Segment Trap auftritt und die sonstige Programmabarbeitung funktioniert. Ich stelle meine Vermutung in Frage, das die Bustreiber zu einer Zeit aktiv sind, bei der sie es nicht sein sollten und das aus folgendem Grund:

Stecke ich eine originale RAM Karte auf Adresse 0 eingestellt zum System dazu, tritt der Bug nicht auf. Was passiert also hier, liefert Enricos RAM Karte unter bestimmten Bedingungen falsche Daten, liefert sie Daten zur falschen Zeit oder liefert sie keine Daten wenn Sie es tun sollte?

Die originale RAM Karte wird auf dem Bus hochohmig sein, wenn sie nicht selectiert ist, demzufolge hätte sie eigentlich keinen Einfluß darauf, wenn Enricos Karte zur falschen Zeit aktiv ist. Es bleibt eigentlich nur noch, das Enricos Karte nicht da ist, wenn sie gebraucht wird, hier wundert mich aber der Einfluß der eingesetzten Bustreiber (HCT vs TTL).

Ich kenne das Z8000 Bussystem viel zu wenig und aus der Doku wird mir das hier nicht klar. Ich habe mir die Z800 Dok von www.datasheetcatalog.com heruntergeladen (ist von ST) und werde aus dem Diagramm auf Seite 30 nicht schlau. Welchen Pegel hat hier /MREQ?

Wer guckt mal mit drüber? Enrico darf ich (oder Du) den GAL Inhalt hier reinsetzten?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
106
30.06.2009, 14:09 Uhr
Olli

Avatar von Olli

Hier das Original von Zilog:

http://bitsavers.org/pdf/zilog/z8000DataSheets/z8001_cpu.pdf

Dort ist das /MREQ auf Seite 25 auch nicht besser erkennbar ob H oder L.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
107
30.06.2009, 14:48 Uhr
paulotto



#MREQ sieht auf Seite 25 wie H aus...
Ist doch für Interrupt und segment trap request und da braucht man kein #MREQ
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
108
30.06.2009, 15:14 Uhr
holm

Avatar von holm

Dort sieht es aber deutlich mehr nach H Pegel aus als im Manual von STM.
Ich habe die Treiber bei nicht Vorhandenem MREQ disabled, das hat am Problem überhaupt Nichts verändert...
Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
109
30.06.2009, 18:05 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Enrico darf ich (oder Du) den GAL Inhalt hier reinsetzten?

Gruß,

Holm

Da hab ich nichts dagegen. Hauptsache es ist nicht zu früh. Nciht dass sich doch noch was anderes ergibt, und die Ersten haben schon mit dem Umbau angefangen.
Pin 13 Reset des '74 sollte auch noch an +5V.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
110
30.06.2009, 18:07 Uhr
Enrico
Default Group and Edit



Zitat:
paulotto schrieb
#MREQ sieht auf Seite 25 wie H aus...
Ist doch für Interrupt und segment trap request und da braucht man kein #MREQ

Im U8001 Original ist /MREQ H.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
111
30.06.2009, 18:16 Uhr
holm

Avatar von holm

Ich habs!
Das war richtig gemein.

Ich schätze Enrico Du hast Dich gewundert warum trotz HCT und hochohmigen Widerständen in der Verzögerungskette die Zeiten so kurz waren?

das hier war flashc:
/VZO = 2MB*/DS + 4MB*/DS + 8MB*/DS + 16MB*/DS
so ist es richtig:
/VZO = 2MB + 4MB + 8MB + 16MB
Dafür noch das hier der Ordnung halber, geht aber auch ohne:
WE = /VZO */RW *DS

..und dann noch die Änderungen bezüglich des Refreshcounters.

Ich erlaube mir mal die komplette File hier reinzustellen, einen GALassembler der das versteht gibts hier zum Download:

http://www.conitec.net/english/software.php

ganz unten " PLAN GAL Assembler".

ISt Dos Kommandozeilensoftware.


Quellcode:
title    P8000 RAM 16 MB
pattern  GATES
revision A
author   Graemer / Tiffe
date     30.06.2009

chip GATES GAL22V10

;pin 1      2       3      4     5    6      7   8        9    10   11     12
     JP_BAE JP_SIT  A0    A21   A22   A23  RFSH  DS      BW    RW   RASEN  GND
;pin 13     14      15     16   17   18      19  20      21   22      23   24
     MREQ   MOE    CAS1  CAS0  WE   CAS3   CAS2 A8LATCH  VZO  7FH    VZI   VCC


@UES U6

        @define 2MB     "/JP_SIT * /A21 * /A22 *
            /A23 * RASEN * RFSH"
        @define 4MB     "JP_BAE * /JP_SIT * A21 *
            /A22 * /A23 * RASEN * RFSH"
        @define 8MB     "JP_SIT * /A23 * RASEN * RFSH * 7FH"
        @define 16MB    "JP_BAE * JP_SIT * A23 * RASEN * RFSH"

        @define CASW    "/VZI * /BW"
        @define CASBL   "/VZI * BW * A0"
        @define CASBH   "/VZI * BW * /A0"




equations

        CAS0    = 2MB*CASW + 2MB*CASBL + 8MB*CASW + 8MB*CASBL
        CAS1    = 4MB*CASW + 4MB*CASBL + 16MB*CASW + 16MB*CASBL
        CAS2    = 2MB*CASW + 2MB*CASBH + 8MB*CASW + 8MB*CASBH
        CAS3    = 4MB*CASW + 4MB*CASBH + 16MB*CASW + 16MB*CASBH
        /MOE     = 2MB * /MREQ + 4MB  * /MREQ
         + 8MB * /MREQ + 16MB  * /MREQ
        WE      = /VZO */RW *DS
        /VZO    = 2MB + 4MB + 8MB + 16MB
        /A8LATCH = MREQ + RFSH

; end of GATES


Das enthält auch die notwendigen Änderungen für einen funktionierenden Refresh.
Dazu wird U6-13 durchtrennt und mit dem Anschluß /MREQ am Steckverbinder C9 oder U14-1 verbunden. U6-20 wird ebenfalls getrennt und an U13-11 gelegt (Flipflopanschlüsse vorher von VCC abtrennen, 13 und 10 wieder an VCC anschließen). U13-12 wird mit A8 verbunden z.B. am Steckverbinder C19 oder U8-13.danach wird noch U12-5 mit U13-9 verbunden. Das GAL neu brennen
und der Laden sollte laufen.
Wenn es evtl. Probleme mit verschiedenen Simms gibt, können die Kondensatoren C1 und C2 auf mindestens die Hälfte verkleinert werden.

Ich habe jetzt nich Alles durchprobiert, aber 2MB und 4MB mit 1MB Simms laufen,
16MB mit 4Mb Simms auch, selbverständlich mit 74LS245, 74F245 und 74HCT245
als Treiber.

Ein GAL im Freiumschlag programmiere ich gerne neu, wenn einer eins übrig hat, nehme ich das auch gerne, ich habe nur das 1 leere und das lies sich beschissen wieder auslöten und durch eine Fassung ersetzten. Ich denke mal ich habe jetzt die mistigste Platine, aber das bin ich ja gewöhnt...
Es geht übrigens sowohl auf dem angekohlten Index 1 Board als auch auf dem Coompact Index 4.

Wie man sieht prellt die NMI Taste:






U880-Softwaremonitor Version 3.1 - Press RETURN
>

U8000-Softwaremonitor Version 3.1 - Press NMI

P8000 Hardwaretest U8001 - Version 3.1
40
P8000
P800
U880-Softwaremonitor Version 3.1 - Press RETURN
>

U8000-Softwaremonitor Version 3.1 - Press NMI

P8000 Hardwaretest
P8000 Hardwaretest U8001 - Version 3.1
40
P8000 Hardwaretest U8001 - Version 3.1
MAXSEG=<3F>
> boot



Boot
: md(0,16000)wega

-------------------------------------------------------------------------------
WEGA Kernel -- Release 3.2 -- Generated 03/10/89 09:57:01
Copyright 1986 ZFT/KEAW-WAE

System: P8000 Node: WEGA Release: 3.2 Version: 3.1 4/5

number of users = 8
size of user struct = (1394/0x572) bytes
address of user struct = 0x3E00F600
kernel memory size = (172288/0x2A100) bytes
user memory size = (4022016/0x3D5F00) bytes
file system /usr = offset 0, 13000 blocks
swap space = offset 13000, 3000 blocks
file system / = offset 16000, 7000 blocks
file system /tmp = offset 23000, 4000 blocks
file system /z = offset 27000, 60732 blocks
-------------------------------------------------------------------------------


P8000 WEGA
Multi-user Startup


/dev/root
File System: Volume:

** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Free List
278 files 5937 blocks 781 free

/dev/rusr
File System: /usr Volume: 1

** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Free List
1036 files 11404 blocks 1074 free

/dev/rtmp
File System: /tmp Volume: 1

** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Free List
5 files 16 blocks 3822 free

/dev/rz
File System: /z Volume: 1

** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Free List
3 files 6 blocks 16702 free
Last known date and time: Wed Jun 30 12:42:42 1999
...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
112
30.06.2009, 18:26 Uhr
paulotto



das mit der prellenden NMI-Taste ist eine Krankheit der P8000. Da muß man eben nochmal starten

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
113
30.06.2009, 19:02 Uhr
Olli

Avatar von Olli

oder einfach nicht mit der booten
O D anstelle der NMI Taste bei der Aufforderung eben diese zu druecken. Der GAL ist ein 22V10 oder? Wenn mein ALL-02 von Ende 80er sagt er koenne

*** Advanced Micro Devices (AMD) (2) ***
Run file : 22V10-02.EXE (V3.4)
Manufacturer : AMD
Type :
22V10

dann sollte das gehen oder hat das D an 22V10D auf dem Chip was zu sagen? Muss ich mir nur noch einen besorgen - doof das ich gerade bei Reichelt bestellt habe hehe
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 30.06.2009 um 19:03 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
114
30.06.2009, 19:11 Uhr
paulotto



ja Olli, sollte gehen. Du brauchst aber das *.jed-File, das Du dir erst über den GAL-Compiler aus den Gleichungen erstellen mußt.

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
115
30.06.2009, 19:40 Uhr
holm

Avatar von holm

Hmm, hättest Du das eher gesagt Klaus, dann hätte ich mir so eine Möhre gar nicht erst besorgt... :-)

So richtig zu frieden bin ich übrigens noch nicht, Irgendwie hängt sich sysgen mit den 4MB Speicher regelmäßig weg. Ich muß die csh killen damit ich das Ding loswerde.
Ich habe auch schon die Meldung bekommen "out of memory" :-|

Kann es sein, das Wega mit plötzlich viel Speicher ein Problem hat?
Ich habe indessen schon in die RAM Verzögerungskette die 330 Ohm Widerstände eingebaut, hat aber an der Sache nichts geändert. Der RAM wird doch wohl nicht noch einen Bug haben?

Edit: @Olli:

Wie verhält sich WEGA bei mehr Speicher als Swap?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 30.06.2009 um 19:49 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
116
30.06.2009, 19:47 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Ich habs!
Das war richtig gemein.

Du bist ganz schön schnell.
Eben hatte ich meinen Programmier-Rechner angemacht.



Zitat:
Ich schätze Enrico Du hast Dich gewundert warum trotz HCT und hochohmigen Widerständen in der Verzögerungskette die Zeiten so kurz waren?

Nicht wirklich. Daran hatte ich nie gemessen. Pi mal Daumen rein, und geht.

Zitat:
das hier war flashc:
/VZO = 2MB*/DS + 4MB*/DS + 8MB*/DS + 16MB*/DS
so ist es richtig:
/VZO = 2MB + 4MB + 8MB + 16MB

Verdammt!
Logisch dass das falsch ist.
/DS ist Datastrobe, Datenübername. Das gehört bei Adressen überhaupt nicht rein.
Weis der Teufel, was mich da geritten hatte.




Zitat:
Dafür noch das hier der Ordnung halber, geht aber auch ohne:
WE = /VZO */RW *DS

Jup.
Müsste das nicht /DS sein?
Bei /MOE gehört es eigentlich auch rein.
--
MFG
Enrico

Dieser Beitrag wurde am 30.06.2009 um 19:49 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
117
30.06.2009, 19:48 Uhr
Olli

Avatar von Olli

4MB ist ja "Standard" bei den Compatcs (ausser du hast die 3. CPU) - damit sollte es mit 4MB auf jedenfall funktionieren. Meine P8000 arbeitet mit 1792KB RAM - ohne Probleme - viel ist das aber nicht

Wenn du die P8000 mal stressen willst, lade dir von mir lccbin.cqm, lccsrc1.cqm und lccsrc2.cqm runter.
dann immer schoen Floppy in Drive 1 rein, und tar -xv INSTALL und das dann ausfuehren. einmal mit lccbin.cqm und einmal mit lccsrc1.cqm.
Dann wechselst du nach /z/LCC/src und setzt ein make ab.... dann wartest du ein paar Stunden - LCC wird nun compiliert. Mit etwas Glueck laeuft es durch Ueber die Speichernutzung kann ich jetzt erstmal nichts sagen.

EDIT: und nicht die lcc1.cqm lcc2.cqm nehmen - das sind nur binaries und noch dazu fehlerbehaftete. Die Fehler im Compiler und libc sind in den genannten Images schon ausgebaut (naeheres steht in README der lccsrc1.cqm)
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 30.06.2009 um 20:19 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
118
30.06.2009, 20:26 Uhr
holm

Avatar von holm

@enrico:
Bei den original RAMS schehr sich bei der Treiber Freigabe auch niemand um /DS.
Die pendeln einfach ein, der BUS muß zu diesem Zeitpunkt frei sein.

Mit dem DS vs. /DS hast Du sicher Recht, nur gibts dann Error 70, kein Speicher da....
Warum?

Ich hatte ne Panic, ausgerechnet beim Kopieren von /boot. Ich werde das erst mal reparieren.
Welches format haben eigntlich die Installationsdisketten und welches die beiden mit den Docs?

@Olli: bis ich Last machen kann, ist es scheinbar noch ein Stück hin.

Ich melde mich..
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
119
30.06.2009, 20:28 Uhr
Olli

Avatar von Olli

die haben ein Wega-Filesystem - normal unter WEGA zu mounten.
Einiges was ich gerne mal vergesse habe ich auch hier zusammen getragen:
http://pofo.de/P8000/notes/P8000_FAQ.txt

@GAL - GAL22V10 - 15LP sind billiger als die 25LP die ich habe (meine heissen um genau zu sein 25LPN) - die sollten ja nur schneller sein - das ist sicherlich nicht tragisch oder?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 30.06.2009 um 20:29 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
120
30.06.2009, 20:41 Uhr
holm

Avatar von holm

Wega läuft wieder, ich habe das Zeuch mit sa.install wieder drauf geschrieben.
Jetzt tut die Kiste wieder wie neue installation, macht nix, eh noch nichts drauf.

Die GALs sollten funktionieren. Selbst die 25er denke ich. Enrico hat mir ein 10er mitgeschickt.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
121
30.06.2009, 20:54 Uhr
holm

Avatar von holm

Wasist denn das eigentlich für ein Sche**ß Olli:

Do you want to add new driver to the system ? : n
New wega is building now ! Wait a minute !
chkout ver.c+
Version 3.2
4 lines
scc -c ver.c
sld -Ns -o wega -e start -X -i -Ms62 wpar.o event.o mch.o u.o ver.o fpe.o conf.o ../sys/LIB1 ../dev/LIB2
Undefined:
Warning - only 8 characters of name are significant
_cpu2_fl
*** Error code 1 (ignored)
rm -f ver.o ver.c
New wega : /usr/sys/conf/wega

New boot is building now !
ld -s -e start -b 0x8000 -o boot bstart.o BOOTLIB
New boot : /usr/sys/conf/boot

Gruß,

Holm

Edit: aha, da ist was breit, jetzt habe ich das Selbe in grün.
Allerdings habe ich jetzt eine originale 1MB Karte drin.
Also nochmal....
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 30.06.2009 um 21:04 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
122
30.06.2009, 21:25 Uhr
holm

Avatar von holm

Olli wenn Du wieder bei Reichelt bestellen solltest, guck mal ob die solche Datenkabelbuchsen für dei WDCs haben (20 polig gewinkelt) und ein paar 26LS31 und 26LS32, ich möchte die DInger mal auf Verdacht wechseln, wegen der Effekte....

BTE: hat schon malJemand an den P8000 3 Platten angeschlossen?
Zumindest die Hardware gibt das her...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 30.06.2009 um 21:27 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
123
30.06.2009, 21:39 Uhr
paulotto



zu DDR-Zeiten mußtest Du froh sein, eine Festplatte drin zu haben...
2 war schon purer Luxus.

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
124
30.06.2009, 21:49 Uhr
Olli

Avatar von Olli

3 Festplatten kann die Firmware nicht wenn mich nicht alles taeuscht. Hardware ja, Firmware nein, Software k.A. Und dann musst du auch noch 3 equivalente Platten haben.... ich habe jetzt ne 100MB Platte drann - da habe ich massig an Platz... mal schaun wann die voll wird.

Werde demnaechst erstmal nicht bei Reichelt bestellen - habe ich ja erst heute getan.... Wird noch ne Weile dauern - so lange muss dann mein RAM Board halt warten.
EDIT: Werde demnaechst nochmal bei Conrad vorbei schauen fuer meine Segmentanzeigen-Widerstaende - die haben aber keine 26LS Bausteine....

Bzgl. Kernel - so sollte es aussehen:

Quellcode:
New wega is building now ! Wait a minute !
        chkout  ver.c+
        Version 3.2
        4 lines
        scc  -c ver.c
        sld -Ns -o wega -e start -X -i -Ms62 wpar.o event.o mch.o u.o ver.o fpe.o conf.o ../sys/LIB1 ../dev/LIB2
        rm -f ver.o ver.c
New wega : /usr/sys/conf/wega

New boot is building now !
        ld -s -e start -b 0x8000 -o boot bstart.o BOOTLIB
New boot : /usr/sys/conf/boot


--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 30.06.2009 um 22:00 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
125
30.06.2009, 21:58 Uhr
paulotto



Hardware hat auch ein Problem mit 3 HDs: wo willst Du die in dem Tower unterbringen? Sind doch nur 2 Aufnahmen drin

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
126
30.06.2009, 22:02 Uhr
holm

Avatar von holm

Du nicht!

Ich baue ein Floppy aus ...

*grin*

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 30.06.2009 um 22:03 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
127
30.06.2009, 22:46 Uhr
Enrico
Default Group and Edit


Die Schaltungsänderungen incl. GAL habe ich nun vorgenommen.
Speichertest und Refreshtest laufen nun bei 2, 4, 8 und 16 MB mit HCT245 und LS245 fehlerfrei durch.

Klasse!

Edit: Was sagt denn Wega zum vielen RAM? Gibts da was neues?
Eigentlich sollte sich deswegen nun nichts geändert haben, ging vorher ja auch.
--
MFG
Enrico

Dieser Beitrag wurde am 30.06.2009 um 22:58 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
128
30.06.2009, 22:51 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
@enrico:
Bei den original RAMS schehr sich bei der Treiber Freigabe auch niemand um /DS.
Die pendeln einfach ein, der BUS muß zu diesem Zeitpunkt frei sein.

Mit dem DS vs. /DS hast Du sicher Recht, nur gibts dann Error 70, kein Speicher da....
Warum?

Hab mir das Diagramm nochmal angesehn.



Die Adressen sind ja schon vorher gültig. MIT /DS kommt /WR wesentlich später. Die RAMs machen aber Early Write. Da muss /WE vor /CAS kommen.
Das tuts dann mit /DS nicht mehr
--
MFG
Enrico

Dieser Beitrag wurde am 30.06.2009 um 22:55 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
129
30.06.2009, 23:02 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb

Ein GAL im Freiumschlag programmiere ich gerne neu,
Gruß,

Holm

Dagegen hätte ich auch nichts.
Ansonsten bitte zu mir schicken, schliesslich hatte ich es ja auch verpfuscht.

Aber nicht vor dem 20.7, bin ja nicht da.
--
MFG
Enrico

Dieser Beitrag wurde am 30.06.2009 um 23:02 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
130
30.06.2009, 23:08 Uhr
holm

Avatar von holm

Genau deswegen hatte ich das Angebot gemacht Enrico.
also schmeißen wir die DS Geschichte aus der Zeile raus. Damit wird es völlig unerheblich...womit wir einen Takteigngang frei hätten um evtl. ein GAL internes FF
als A8 Latch zu benutzen :-)

Ich weiß aber noch nicht ob ich Lust dazu habe darüber zu grübeln..mal überlegen.
BTW: meine Versuche hier einen 53C80 aufzutreiben sind vorläufig fehl geschlagen. Alles mögliche andere Zeuch, von WD, Symbios usw. Ich würde Dir also gerne den einen oder anderen abschachern, Du hast wegen der 8127 eh noch was gut.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
131
30.06.2009, 23:20 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Genau deswegen hatte ich das Angebot gemacht Enrico.
also schmeißen wir die DS Geschichte aus der Zeile raus. Damit wird es völlig unerheblich...womit wir einen Takteigngang frei hätten um evtl. ein GAL internes FF
als A8 Latch zu benutzen :-)

Glaube nicht, dass das mit dem /DS EIngang was wird.
Für ein RS-FF müssten es 2 Ausgängre sein, für das interne FF muss es Pin 1 sein.


Zitat:
BTW: meine Versuche hier einen 53C80 aufzutreiben sind vorläufig fehl geschlagen. Alles mögliche andere Zeuch, von WD, Symbios usw. Ich würde Dir also gerne den einen oder anderen abschachern, Du hast wegen der 8127 eh noch was gut.

Gruß,

Holm


Demnächst fällt Dir dann noch ein, dass Du auch noch Terminator-ICs, und eine SCSI-Bus Anzeige brauchst?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
132
30.06.2009, 23:43 Uhr
holm

Avatar von holm

...eine SCISI Bus Anzeige? ICh habe irgend solchen Kram aus einem 19" Einschub wo mal 2 DLTs drin waren. Oder meinst Du Bus Status? Da hast Du sicher auch mehrere Stangen rumliegen? :-)

Das Ding ist SCSI 1, ich hätte es mit ollen profanen R-Netzwerken versucht..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
133
01.07.2009, 00:20 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
...eine SCISI Bus Anzeige? ICh habe irgend solchen Kram aus einem 19" Einschub wo mal 2 DLTs drin waren. Oder meinst Du Bus Status? Da hast Du sicher auch mehrere Stangen rumliegen? :-)

Für den ganze Bus, 18 LEDs glaube ich.
Ein paar selbstgemachte Platinen habe ich noch da. Passt in so ein Adaptergehäuse für 25pol.-25pol Sub-D, auch beideseits mit dem Anschluss.



Zitat:
Das Ding ist SCSI 1, ich hätte es mit ollen profanen R-Netzwerken versucht..

Gruß,

Holm

Geht, auch. 220/330 Ohm werden aber ordentlich warm.

Der von Zilog soll immerhin auch 3 MB/sek schaffen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
134
01.07.2009, 00:29 Uhr
holm

Avatar von holm

Klingt interessant...
Aber denke ja nicht, das Du Dich davonstehlen kannst :-)
Das ist genug Arbeit für alle.

Ich habe hier Platinen auf denen Terminatorchips sitzen, ist aber SMD, nix für Lochraster...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
135
01.07.2009, 00:39 Uhr
Enrico
Default Group and Edit


Anders habe ich die auch nicht, dafür aber ein paar mehr.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
136
01.07.2009, 12:14 Uhr
holm

Avatar von holm

Ok, dann nehme ich halt die :-) Soll ja mal nachzubauen sein.

Der Speicher funktioniert immer noch nicht richtig:

WEGA login: wega
Password:
___ ___ ___ ____________ ________ ________
[..]
#1 cd /usr/sys
#2 sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
Out of memory.
#3

Das ist mit 2MB 9er Siemens SImms. Das Selbe passiert aber auch mit 2MB Topless Billigmodulen.
Ich habe noch keine Ahnung wo ich ansetzten soll, die Speichertrsets laufen Alle durch.
Die Kiste meldet baim Booten aber auch 2MB RAM:
-------------------------------------------------------------------------------
WEGA Kernel -- Release 3.2 -- Generated 07/01/109 08:46:44
Copyright 1986 ZFT/KEAW-WAE

System: P8000 Node: WEGA Release: 3.2 Version: 3.1 4/5

number of users = 8
size of user struct = (1394/0x572) bytes
address of user struct = 0x3E00F600
kernel memory size = (171520/0x29E00) bytes
user memory size = (1925632/0x1D6200) bytes
file system /usr = offset 0, 13000 blocks
swap space = offset 13000, 3000 blocks
file system / = offset 16000, 7000 blocks
file system /tmp = offset 23000, 4000 blocks
file system /z = offset 27000, 64500 blocks
-------------------------------------------------------------------------------

Mist ...

Das passiert mit 1MB Originalspeicher nicht.
Ich werde das DIng mal mit ambrosius RAM Karten und der 1MB Karte bestücken,
mal sehen was da passiert.

Gruß,

Holm

esit: mit 2MB originalram funktioniert das erwartungsgemäß..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 01.07.2009 um 14:26 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
137
01.07.2009, 17:22 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Ok, dann nehme ich halt die :-)

OK.


Zitat:
Soll ja mal nachzubauen sein.

Könte man aber auch diskret machen.
Spannungsregler 2,85V mit je 100 Ohm für jede Leitung.


Zitat:
Der Speicher funktioniert immer noch nicht richtig:

WEGA login: wega
Password:
___ ___ ___ ____________ ________ ________
[..]
#1 cd /usr/sys
#2 sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
Out of memory.
#3

..
esit: mit 2MB originalram funktioniert das erwartungsgemäß..

Gruß,

Holm

Verstehe ich nicht.
Obs da Probleme in Verbindung mit den MMUs gibt?

Ein Speichertestprog für Wega wäre nicht verkehrt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
138
01.07.2009, 18:18 Uhr
holm

Avatar von holm

Vorläufig habe ich da keine Ahnung, das Index 4 16 Bit Board hat sich was Neues einfallen lassen:


P8000 Hardwaretest U8001 - Version 3.1
*** ERROR 80 00FC 00 00 FF
*** ERROR 81 00FC 00 00 FF
*** ERROR 81 00FC 01 01 FE
*** ERROR 81 00FC 00 AA FF
*** ERROR 81 00FC 00 55 FF
*** ERROR 80 00FC 00 00 FF
*** ERROR 80 00FC 00 00 FF
*** ERROR 84 FFC9 AA FF
*** ERROR 84 FFC9 55 FF
*** ERROR 85 01 00 0815
*** ERROR 85 01 01 0815
*** ERROR 86 01 00 0815
*** ERROR 86 01 01 0815
*** ERROR 87 01 00 0815
*** ERROR 87 01 01 0815
*** ERROR 88 01 00 0815
*** ERROR 88 01 01 0815
*** ERROR 89 01 00 0815
*** ERROR 89 01 01 0815
*** ERROR 90 01 00 0815
*** ERROR 90 01 01 0815
*** ERROR 92 00FA 00 0000
*** ERROR 94 00F6 00 0000
Sieht IMHO danach aus, als ob die Stack MMU nicht mehr ansprechbar ist, schaunmermal..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
139
01.07.2009, 18:46 Uhr
Enrico
Default Group and Edit


Also dochmal neubauen. So langsam scheint es, als ob das weniger Arbeit macht.
Bei mir geht WDC nicht, und das Terminal fängt auch wieder an zu spinnen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
140
01.07.2009, 19:07 Uhr
Olli

Avatar von Olli

Speichertest unter WEGA wird nicht viel bringen da die CPU dann nicht mehr im SYSTEM mode arbeitet und dich der Kernel daran hindert da direkt rumzumachen.
Du wirst natuerlich Speicher allozieren koennen. Nur weisst du nicht wo der landet im RAM, oder ob er auch im Swap landet... deswegen sind Speichertestprogramme immer vor dem OS am Start
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
141
01.07.2009, 19:28 Uhr
holm

Avatar von holm

Soo... der Test sieht jetzt erst mal wieder so aus:

P8000 Hardwaretest U8001 - Version 3.1
*** ERROR 52 C1 AAAA
*** ERROR 52 C1 AAAA
*** ERROR 53 C1 AAAA 0000
*** ERROR 52 C1 5555
*** ERROR 52 C1 5555
*** ERROR 53 C1 5555 0000
*** ERROR 54 C1
MAXSEG=<03>

(mit dem blanken Board auf dem OP Tisch und einer Speicherkarte).
Es war die Code MMU wie ein Blich in p.init.s nach der Adresse der MMU (FC)
nahelegte.
Beim Auslöten isind von der ST Z8010AB1 MMU im DIP Gehäuse die PINs abgefallen, nicht wie üblich, dünnes Teil abgerissen, nee, direkt an der Kante an der die Pins aus dem Gehäuse kommen. Möglicherweise liegt das am Material, nach einem Riß habe ich aber vor dem Auslöten nicht gesucht.
Jetzt steckt eine von MME in der Keramikschachtel auf der Fassung.

Ich habe auch so meine Probleme, hauptsächlich mit den vorhandenen Platten. Echt Käse wenn man WDCs reparieren will.

Betreffs Speichertest: Olli ich habe den immer Wega neu bauen lassen, deshalb habe ich auch schon 2 mal das Rootfilesystem neu aufspielen müssen. Wie es aussieht gibts kein fsck auf der Startdiskette? Der Kern hänngte sich beim booten weg..
Nochwas: gibts ne Möglichkeit Badtraks nachzutragen ohne sa.format und nachheriges erneutes Aufspielen des RootFS? Echt Kacke ohne Streamer :-)

Gruß,

Holm, der jetzt die Platine wieder ins Gehäuse setzt.
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
142
01.07.2009, 20:57 Uhr
holm

Avatar von holm

@ Enrico: Ich habe es jetzt nochmal probiert: /DS mit MOE zu verknüpfen ist tötlich,
das /MOE der Enable Eingang der 245er ist. d.h. das ist nicht nur Memory Output Enable sondern auch Memory Input Enable. MOE Schaltet die DInger also bei RAMzugriff überhaupt ein.

Ich werde jetzt wieder mal ändern:

/G der 245er an Masse, immer enabled und nur die Richtung mit dem GAL umschalten...

Gruß,

Holm

Edit:

So habe ich gemacht, geht genauuso wie vorher..
Langsam gehen mir die Ideen aus.

Hier mal der aktuelle GAL Inhalt, MOE geht jetzt auf DIR der 245er, Enable ist an Masse.


Quellcode:
title    P8000 RAM 16 MB
pattern  GATES
revision A
author   Graemer/ Tiffe
date     1.07.2009

chip GATES GAL22V10

;pin 1      2       3      4     5    6      7   8        9    10   11     12
     JP_BAE JP_SIT  A0    A21   A22   A23  RFSH  DS      BW    RW   RASEN  GND
;pin 13     14      15     16   17   18      19  20      21   22      23   24
     MREQ   MOE    CAS1  CAS0  WE   CAS3   CAS2 A8LATCH  VZO  7FH    VZI   VCC


@UES U6

        @define 2MB     "/JP_SIT * /A21 * /A22 *
            /A23 * RASEN * RFSH"
        @define 4MB     "JP_BAE * /JP_SIT * A21 *
            /A22 * /A23 * RASEN * RFSH"
        @define 8MB     "JP_SIT * /A23 * RASEN * RFSH * 7FH"
        @define 16MB    "JP_BAE * JP_SIT * A23 * RASEN * RFSH"


        @define CASW    "/VZI * /BW"
        @define CASBL   "/VZI * BW * A0"
        @define CASBH   "/VZI * BW * /A0"
       @define MEMRR   "/MREQ * RW * /DS"

equations

        CAS0    = 2MB*CASW + 2MB*CASBL + 8MB*CASW + 8MB*CASBL
        CAS1    = 4MB*CASW + 4MB*CASBL + 16MB*CASW + 16MB*CASBL
        CAS2    = 2MB*CASW + 2MB*CASBH + 8MB*CASW + 8MB*CASBH
        CAS3    = 4MB*CASW + 4MB*CASBH + 16MB*CASW + 16MB*CASBH
        MOE     = 2MB * MEMRR + 4MB  * MEMRR
                     + 8MB * MEMRR + 16MB * MEMRR
        WE      = /VZO * /RW
        /VZO    = 2MB + 4MB + 8MB + 16MB
        /A8LATCH = MREQ + RFSH

; end of GATES

Hat Jemand noch eine Idee?
Sämmtliche Speichertests laufen durch, keine Hänger, nur Wega baut keinen Kern:

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
Out of memory.
#4
U880-Softwaremonitor Version 3.1 - Press RETURN
>

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 01.07.2009 um 22:10 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
143
01.07.2009, 21:00 Uhr
Enrico
Default Group and Edit


Ich bin auch gerade am umstricken.
/MOE soll mit /MREQ statt RASEN kommen. Damit sollte das etwas kürzer sein.
Das ist dann dichter am Original dran.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
144
01.07.2009, 21:26 Uhr
holm

Avatar von holm

Hab ich doch schon gemacht...
Edit:
Lies mal oben. Die Idee hinter der Umstrickerei war, beim Lesen /DS mit
in das Enable der Treiber stecken zu können, ist aber völlig Wurscht,
kein Unterschied ob mit oder ohne.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 01.07.2009 um 21:31 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
145
01.07.2009, 21:35 Uhr
Olli

Avatar von Olli


Zitat:
holm schrieb
Ich habe auch so meine Probleme, hauptsächlich mit den vorhandenen Platten. Echt Käse wenn man WDCs reparieren will.

Sind ja schon 2 seit gestern auf dem Weg zu dir



Zitat:
holm schrieb
Wie es aussieht gibts kein fsck auf der Startdiskette? Der Kern hänngte sich beim booten weg..
Nochwas: gibts ne Möglichkeit Badtraks nachzutragen ohne sa.format und nachheriges erneutes Aufspielen des RootFS? Echt Kacke ohne Streamer :-)

Es gibt kein fsck - kann man ja mal ueberlegen ob man das als standalone Programm hinbekommt - adaptiert von einem SYSIII-fsck...
Nachtragen von BTT geht nur mit sa.format. Du kannst mal probieren ob du es hinbekommst ohne formatieren indem du mit den Optionen irgendwie rumspielst - nach der Abfrage ob du die BTT manuell erweitern willst.
Ansonsten formatier halt n Bereich der im Swap liegt nachdem du das in die BTT mit der Hand aufgenommen hast.
Ich bezweifel aber, dass das irgendwas bringt... danach fehlt dem Filesystem so der ein oder andere Sektor. Und wenn WEGA denkt rootfs ist genau 7000 Sektoren lang, ist aber nur 6999 - k.A. - dann verschieben sich evtl. alle Grenzen... will da gar nicht so genau drueber nachdenken
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
146
01.07.2009, 21:46 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Hab ich doch schon gemacht...
Edit:
Lies mal oben. Die Idee hinter der Umstrickerei war, beim Lesen /DS mit
in das Enable der Treiber stecken zu können, ist aber völlig Wurscht,
kein Unterschied ob mit oder ohne.

Gruß,

Holm

Nö, nicht ganz. Da ist RASEN und /MREQ drin.
sollte aber nur /MREQ sein, bei VZO muss RASEN dazu.
Das wäre dichter am Org.

/DS soll lt. Org. nur auf /WE für die RAMs drauf. Dann gehts aber weider nicht mehr.

Ich schick DIr das mal zum tesetn unter Wega.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
147
01.07.2009, 21:48 Uhr
holm

Avatar von holm

Hmm, nicht gerade rosige Aussichten.

BTW: denke mal über dieses blöde sysgen symptom nach. Ich bin im Singleusr Mode,
habe die Filesysteme dran und diese blöde Shellabfrage wird damit beantwortet das kein Speicher da währe...
Das hier funktioniert aber:

#7 make -i -f make.wega
chkout ver.c+
Version 3.2
4 lines
scc -c ver.c
sld -Ns -o wega -e start -X -i -Ms62 wpar.o event.o mch.o u.o ver.o fpe.o conf.o ../sys/LIB1 ../dev/LIB2
rm -f ver.o ver.c
#8
das hier augenscheinlich nicht, es müßte eigentlich 2 mal der selbe Kern sein,
es sei denn, da sind timestamps oder sowas drin.
:
#11 sum /wega
7148 189 /wega
#12 sum wega
7146 189 wega
#13

sysgen funktioniert mit dem Originalspeicher, 2MB und mit 2MB habe ich auch Enricos KArte bestück. Die Code MMU ist nagelneu :-)
Gruß,

Holm

Edit:

Aha:
#15 diff -b /wega wega
564c564
< ,jææ!ÂKò>îÂ
)î Â*î©
áÜ¡\ÚÞ©ñ"_ÚÞ©ñ%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö?@[$]WEGA Kernel -- Release 3.2 -- Generated 07/01/99 20:17:18
---
> ,jææ!ÂKò>îÂ
)î Â*î©
áÜ¡\ÚÞ©ñ"_ÚÞ©ñ%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö%ÎL¾ö?@[$]WEGA Kernel -- Release 3.2 -- Generated 07/01/99 21:37:04
#16
Ich hatte mit diff -b zwar was Anderes vor aber naja ...
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 01.07.2009 um 21:50 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
148
01.07.2009, 21:54 Uhr
Enrico
Default Group and Edit


Sieht wie auf einer chin. Homepage aus.
--
MFG
Enrico

Dieser Beitrag wurde am 01.07.2009 um 21:55 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
149
01.07.2009, 22:06 Uhr
Olli

Avatar von Olli

Bei binaries cmp oder besser ein diff vom hd-Output - nur doof das der WEGA-hd keine ascii-7 clean Zeichen auch mit anzeigt
Die object files haben auch unterschiedliche Erstelldaten Diese werden in dem WEGA-Objekt mitabgelegt - mal unabhaengig der generated Zeit deines diff. Siehst du wenn du das Objekt wieder auspackst in seine Einzeldateien mit "ar x wega". Die Zeiten werden mit in dem Kernel (is ja auch nur ne lib) abgelegt.

EDIT: Wobei - ich sehe gerade der wird ja gestrippt gelinked... evtl stimmt dann der letzte Part auch nicht... hab die P8000 gerade aus
Bei normalen ungestripten libraries (LIB1, LIB2 z.B.) ist das jedenfalls so - wenn du die auspackst siehst du das einige Objectfiles aelter als WEGA sind (Zilog laesst gruessen ) nm und ar waren ja meine dicksten Freunde beim Kernel-Source-Retrival
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 01.07.2009 um 22:08 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
150
01.07.2009, 22:15 Uhr
holm

Avatar von holm

Ja, cmp habe ich indessen auch gefunden, aber die Binärkotze hat mir doh gezeigt was ich wissen wollte: -)
Der Rest ist für mich an sich nichts Neues bis auf das mit den Zilog Objekten :-)

Für die Fans obskurer Fehler: Nein, das einstecken der 1. Orignalen 256KB zusätzlich zu Enricos Karte behebt den Fehler diesmal nicht..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
151
02.07.2009, 19:36 Uhr
Enrico
Default Group and Edit



Zitat:
Enrico schrieb
Also dochmal neubauen. So langsam scheint es, als ob das weniger Arbeit macht.
Bei mir geht WDC nicht, und das Terminal fängt auch wieder an zu spinnen.

Schöner Mist, jetzt ist wirklich mein WDC breit.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
152
02.07.2009, 20:41 Uhr
holm

Avatar von holm

Was ist denn los mit dem Ding?
Antworte mal hier oder im WDC Thread oder per PN oder was weis ich.

Email geht heute nicht mehr so wie es aussieht, die Teledumdummies haben heute
die Standleitung zu einem unserer Serverräume kaputt gemacht. (FreibergNet) Ich habe noch einen dieser Dummies der gerade wegfahren wollte noch vor dem KVT weggefangen und ihn gefragt ob er gebastelt hat. Antwort: Nö....
Das ist schon mindestens das vierte mal, das die die Leitung abklemmen weil die nicht wissen welche Ader wohin führt. Warscheinlich hat jetzt ein neuer Kunde ein funktionierendes Adernpaar und eine unserer Doppeladern ist jetzt ein Kackding,
weil sie sich wieder verklemmt haben.

Wenn mir diese Lügenlarve wieder über den Weg läuft kriegt er paar auf die Fresse für seine Lügerei.

Mann diese Firma geht mir auf den Sack! Sooo vieeeele Blindnieten.
Dabei sind unsere Leitungen nicht mal bei denen angemietet.

Sorry, mußte mal raus.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
153
02.07.2009, 21:13 Uhr
MichaRa



Hi Holm,

ich glaube Dir Deinen Frust. Der wuste es bestimmt wirklich nicht. Ist leider so heutzutage in der Firma. Die die sich auskannten wurden weggecleart. Ich bekomme auch zweimal in der Woche einiger meine Datenleitungen als gestört und dabei bin ich praktisch Kunde in der eigenen Firma...

Micha
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
154
02.07.2009, 21:26 Uhr
holm

Avatar von holm

...dann soll der Ranzen wenigstens nicht lügen! Das ist das was mich am meisten ankotzt.

Ich schaue nun schon seit Stunden auf ein Ping auf dieser Leitung. Alle halbe Stunde
schafft es das DNT2MI das Ding mal für ein paar Sekunden hoch zu kriegen, 5 Pings passen durch, dann fällt das wieder runter.
Dabei darfst Du nicht denken, das dier da noch irgendwo am arbeiten sind, es ist Feierabend! Das aber scheinbar schon seit heute morgen 10.00 Uhr.

Wenn ich rausbekomme das das Absicht war und eine der Solarbuden so wichtig war, das eine gute Leitung ab und Dreck aufgeklemmt wurde, werde cih zur Sau. ..und ich kriege das raus, verlaß Dich drauf.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
155
03.07.2009, 14:54 Uhr
holm

Avatar von holm

@enrico: Ich habe Deine Vermutung in Deiner Mail als Binären Haufen gelesen.
Maine Email ist gestört, bitte nicht Mailen!

Das liegt nicht an der Platte, denn wenn ich den RAM gegen originalen tausche, geht das...
Gruß,

Holm

@Olli: Die Platten sind heute gekommen, die Kalok meldet sich allerdings gar nicht
auf die Seagate spiele ich gerade was auf..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 03.07.2009 um 14:55 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
156
05.07.2009, 17:37 Uhr
Olli

Avatar von Olli

Komisch, bei mir ging die Kalok... Sie ist halt noch unformatiert - ich habe nur ein paar Cyl. an der P8000 formatiert - und BTT+PAR ist nicht geschrieben....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
157
07.07.2009, 10:27 Uhr
Olli

Avatar von Olli

Um nochmal auf das RAM Thema zurueck zu kommen....
Die Aenderungen aus 111 und dann laeufts? Oder ist noch was offen?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
158
07.07.2009, 11:42 Uhr
holm

Avatar von holm

Nunja, ich denke mal da ist immer noch irgend etwas offen. Baue aber mal diesen Stand und teste mal bei Dir, Enrico kam ja auf Grund des defekten WDC nicht dazu..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
159
07.07.2009, 11:54 Uhr
Olli

Avatar von Olli

Ok, wird sich aber noch ziehen... AC1 muss noch etwas gedeihen und ich habe auch immer noch keinen GAL. Bei Conrad (wo ich vorbei fahren koennte= sind die 6mal so teuer wie bei reichelt (irgendwas um 7 EUR anstelle 1,irgendwas) Dauert also noch was
Da ich die Fassungen bereits eingeloetet hatte kann ich an dem '74er leider nix mehr durchtrennen (waren ja leider auf der Bestueckungsseite die Leiterzuege). Werde dann wohl die IC-Beine aus den Sockeln haengen lassen und die Kabel da anloeten.... sieht nich so schoen aus aber was will man machen
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
160
10.07.2009, 08:22 Uhr
Olli

Avatar von Olli

bei ebay gibts PAL22V10 - aber PAL != GAL oder?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
161
10.07.2009, 09:04 Uhr
holm

Avatar von holm

Die sind nur 1x programmierbar im Gegensatz zu GALs oder PALCEs.
Für den endgültigen Betrieb würden die aber funktionieren.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 10.07.2009 um 09:31 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
162
10.07.2009, 11:17 Uhr
Olli

Avatar von Olli

Moment... ich kann den GAL von Enrico nehmen und einfach ueberbrutzeln? Ich dachte der waere eh nur einmalig beschreibbar? argh... *Kopf-gegen-Wand-hau*
Fragt sich nur ob mein Programmer den D-Typen kann - da steht ja nur 22V10 in der Teileliste meines Programmers
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
163
10.07.2009, 15:07 Uhr
holm

Avatar von holm

...probiere es aus, der meckert schon wenn er es nicht kann....

GALS sind genauso wie PALCEs wieder löschbar.

BTW: wo azuf Ceiner SEite finde ich die LCC Sourcen?
hast Du die auch noch als tar archiv oder muß ich erst die Dose booten um mit copyqm rumzuhantieren :-~ ?

Gruß,

Holm

Edit: OK Tante Gurgel hat es gefunden...

trotzdem noch ne Frage: Du erwähntest mal das man die CQM Dinger teilweise mir libdisk lesen kann, wie genau?
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 10.07.2009 um 15:24 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
164
10.07.2009, 15:33 Uhr
Olli

Avatar von Olli

Hi holm,

CopyQM: http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=2780
LCC Sourcen: http://pofo.de/P8000/arch - gibt es dort auch als TAR Archiv lccsrc.tar - ansonsten liegen sie ausgepackt auch hier: http://pofo.de/P8000/misc/sources/WEGA/cmd/lcc/ - dann aber den WEGA Patch nicht vergessen (im TAR Archiv ist er bereits angewendet worden)
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
165
10.07.2009, 15:43 Uhr
Olli

Avatar von Olli

Oehm... wie blanke ich denn so einen GAL? Meine Programmiersoft will scheinbar nicht programmieren ohne das der GAL blank ist.

? Blank check error at:
Input line = 0
Product term = 0
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
166
10.07.2009, 15:47 Uhr
holm

Avatar von holm

Die Software muß eine Option zum Löschen haben.
-e für erase ?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
167
10.07.2009, 16:04 Uhr
Olli

Avatar von Olli

Das waere zu einfach
Das Programm fuer den 16V8 hat n BULK ERASE und das fuer 20CV10 auch.... scheint er echt nicht zu koennen - was ein Driss
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
168
10.07.2009, 16:10 Uhr
holm

Avatar von holm

Was... das Ding kann 16V8 und 20V8 löschen aber 22V10 nicht?
Wer macht denn Sowas?

was issn 20V10?
Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 10.07.2009 um 16:11 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
169
10.07.2009, 16:28 Uhr
Olli

Avatar von Olli

die hat fuer jeden GAL/PAL ne extra EXE.
Von 22V8 schrieb ich nix? Kann der auch nich...

22CV10 ist n CMOS EEPLD

http://ch.farnell.com/information-chips-technology/peel22cv10ap10/cmos-eepld-22cv10-dip24-5-25v/dp/704180
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 10.07.2009 um 16:28 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
170
10.07.2009, 16:41 Uhr
holm

Avatar von holm

Irgendwie würfelst Du mit den Bezeichnungen, mir sidn 16V8, 20V8 und 22V10 bekannt.

> Das Programm fuer den 16V8 hat n BULK ERASE und das fuer 20CV10 auch....
> scheint er echt nicht zu koennen - was ein Driss

BTW: CMOS EEPLDs sind GALs alle...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
171
10.07.2009, 18:00 Uhr
Olli

Avatar von Olli

Ich habe eine EXE fuer GAL16V8+GAL16V8A - die kann Loeschen und Schreiben. Dann habe ich eine EXE fuer 18CV8, 22CV10, PEEL153, PEEL173, PEEL253 und PEEL273 - die kann auch Loeschen und schreiben.
Und dann habe ich eine EXE fuer 22V10 - die kann aber nur Schreiben.

Du schriebst "das Ding kann 16V8 und 20V8 löschen aber 22V10 nicht" - das er 20V8 loeschen kann, davon schrieb ich doch gar nichts BTW: in 169 meinte ich 20V8 nicht 22V8

http://pofo.de/tmp/PARTS02.LST
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
172
10.07.2009, 18:51 Uhr
holm

Avatar von holm

Hmpf...

Hexdumpe die Exe für das 22V10 mal, das gibts wirklich so ziemlich nicht...


Der offene Drahthaufen nebst Deinem WDC compiliert hier schon ewig am LCC rum.
Die schiere Performance ist schon beeindruckend :-))

Muß das so sein:
cd cpp ; make
lcc -c -O -Dunix -Du8k -DFLEXNAMES -I. ./cpp.c
"./cpp.c", line 129: constant too big for compiler
"./cpp.c", line 129: warning: zero or negative subscript
yacc ./cpy.y

(kann ja gerade nicht reingucken...)



Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
173
10.07.2009, 18:55 Uhr
Olli

Avatar von Olli

Habs jetzt auch nicht am laufen den LCC Compile, aber wuerde mal sagen, das muss so - jo

hier die gedumpte EXE:
http://pofo.de/tmp/22V10-02.EXE.dmp
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
174
10.07.2009, 20:17 Uhr
holm

Avatar von holm

Du solltest das hexdumpen damit Du nach versteckent Optionen suchen kannst, nicht ich :-)

Das ist also ein alter ALL irgendwas, GALS werden scheinbat von dem Stück Software nicht unterstützt sondern nur PALs der folgenden Hersteller:

1. TIBPAL (Texas Instr.)
2. AMD
3. ATMEL
4. CYPRESS
5. TICPAL
6. SAMSUNG
7. MMI/CPAL

"MMI invented the PAL"
"MMI was eventually acquired by AMD. AMD later spun off their programmable logic division as Vantis. Vantis was acquired by Lattice Semiconductor."
(http://www.brouhaha.com/~eric/retrocomputing/mmi/palasm/)

Das Zeuch ist also aus der Zeit Friedrich des Heizbaren...kurz nach der Erfindung des Rades.
Hast Du schon mal rumgegurgelt ob eventuell eine neuere Software dafür gibt? Durchaus möglich das die Hardware das kann....

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
175
10.07.2009, 21:57 Uhr
Olli

Avatar von Olli

Ich hatte die neuste Software zu dem ALL-02 - es gibt eine .fr Seite zu dem Teil - der hatte ne aelter Version - und die .de Vertretung von HI-LO hatte auch eine aeltere
Die Soft is von '89 - so alt wie meine P8000
Das Prograemmchen nennt sich nur "GAL 22V10" - daher nahm ich an, das es auch GAL kann...
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
176
10.07.2009, 22:06 Uhr
holm

Avatar von holm

Hmmpf, Verttretung von HiLo hier in DD? Die machen die Knie nicht gerade um Dir zu helfen, wie Alle itgendwelchen Niederlassungen...

Du muß den Fliegenden Holländern auf den Kranz gehen wenn das was werden soll...
Schreibe denen mal eine Mail und deute an, das wie hier im Forum neugierig auf eine Antwort sind...

Das mit dem Namen des Prog ist schon seltsam, irgendwas haben die da wohl vergessen..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
177
10.07.2009, 22:16 Uhr
Olli

Avatar von Olli

Oder ich schicke die GALs einfach zu dir - ist im Zweifel schneller
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
178
11.07.2009, 21:34 Uhr
Olli

Avatar von Olli

Wollte gerade mal etwas an der RAM Platine loeten, aber:


Zitat:
- Dazu wird U6-13 durchtrennt und mit dem Anschluß /MREQ am Steckverbinder C9 oder U14-1 verbunden.
- U6-20 wird ebenfalls getrennt und an U13-11 gelegt (Flipflopanschlüsse vorher von VCC abtrennen, 13 und 10 wieder an VCC anschließen).
- U13-12 wird mit A8 verbunden z.B. am Steckverbinder C19 oder U8-13.
- danach wird noch U12-5 mit U13-9 verbunden.
- Das GAL neu brennen

Bist du dir ganz sicher, das Pin 13 an U6 durchgetrennt werden soll? U6-13 ist doch der eine Bustreiber mit AD13...
U6-20 ist die Betriebsspannung oder? Meinst du evtl. U9 - den GAL?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
179
11.07.2009, 22:07 Uhr
Enrico
Default Group and Edit


U9 Pin 13 muss durchtrennt werden.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
180
11.07.2009, 22:36 Uhr
Olli

Avatar von Olli

Ok, also heisst es richtig:

- Dazu wird U9-13 durchtrennt und mit dem Anschluß /MREQ am Steckverbinder C9 oder U14-1 verbunden.
- U9-20 wird ebenfalls getrennt und an U13-11 gelegt (Flipflopanschlüsse vorher von VCC abtrennen, 13 und 10 wieder an VCC anschließen).
- U13-12 wird mit A8 verbunden z.B. am Steckverbinder C19 oder U8-13.
- danach wird noch U12-5 mit U13-9 verbunden.
- Das GAL neu brennen

@holm - kann ich dir meine beiden GALs schicken und du brennst sie mir neu? Frankierten Rueckumschlag kann ich beilegen....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
181
11.07.2009, 22:57 Uhr
Enrico
Default Group and Edit


Das Ganze optisch.
Das NOR-Gatter ist das im GAL.





--
MFG
Enrico

Dieser Beitrag wurde am 11.07.2009 um 22:59 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
182
12.07.2009, 08:01 Uhr
Olli

Avatar von Olli

Der fette Elko... was kann ich stattdessen nehmen? Habe zur Auswahl
22µ/35V
1µF/80V Elko
100µF/10V Elko

Auf den Original-RAM-Karten steckt ja ein 100µF/10V

7405 kann ich irgendwie auch nicht auftreiben
Den Rest habe ich soweit fertig....
Muessen die Jumper geschlossen sein fuer 2 Baenke und 4 MB SIMMs? Habe nur 1MB SIMMs also denke ich mal, J2 geschlossen, J3 offen?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 12.07.2009 um 08:42 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
183
12.07.2009, 11:02 Uhr
Enrico
Default Group and Edit


100 µF sollte auch reichen, aber mehr ist besser.
Wieso "fett"? Der ist doch nicht gross.

Kein LS oder HCT da?
'06 geht auch, oder'14. Der hatt nur die Schmitttrigger mit drin.

Jumperstellung steht doch drauf.

Edit: Ja, stimmt.
--
MFG
Enrico

Dieser Beitrag wurde am 12.07.2009 um 11:08 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
184
12.07.2009, 11:51 Uhr
Olli

Avatar von Olli

habe gar keine 7405 - egal in welcher Version
7406 und 7414 habe ich auch nicht....

Bzgl Elko - hatte bei Reichelt leider aus Versehen 470/100 bestellt... das waren ordentliche Klopper Sind inzw. aber schon wieder zurueckgeschickt.... ich werde mal die 100er nehmen.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
185
12.07.2009, 12:14 Uhr
Olli

Avatar von Olli

Hier mal Fotos von meinem Board (habe mich bei den Widerstaenden dann doch fuer 805er SMD entschieden)

http://pics.pofo.de/gallery/v/P8000/P8000_boards/P8000_memory/P8000_memory_16MB/

Braeuchte jetzt noch

a) jemanden der mir die 2 GAL neu brutzelt
b) einen 74(LS|HCT)05
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 12.07.2009 um 12:15 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
186
12.07.2009, 12:59 Uhr
Enrico
Default Group and Edit


GAL könnte ich brutzeln, bin aber nächste Woche nicht da.
Allerdings ist die Logik etwas anders. Macht aber auch erstmal keinen Unterschied. Hat Holm schon probiert.
'05 habe ich da.
--
MFG
Enrico

Dieser Beitrag wurde am 12.07.2009 um 13:01 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
187
12.07.2009, 13:30 Uhr
Olli

Avatar von Olli

Logik ist anders heisst ich muss nochmal Strippen ziehen?
Evtl. meldet sich ja Holm noch - er bot ja auch an GALs zu brutzeln
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
188
12.07.2009, 13:50 Uhr
paulotto



Hallo Olli,

GALs kann ich Dir auch brennen. Brauche nur JEDEC-File und die GALs...

Gruß

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
189
12.07.2009, 14:26 Uhr
Enrico
Default Group and Edit



Zitat:
Olli schrieb
Logik ist anders heisst ich muss nochmal Strippen ziehen?

nein
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
190
29.07.2009, 20:11 Uhr
Olli

Avatar von Olli

So - dank holm habe ich nun einen neu programmierten GAL und einen LS05.
Wie bei Holm musste ich auch feststellen, dass das Board sehr waehlerisch bei den RAM-Modulen ist:

Folgende 4 verschiedene Modularten habe ich immer paarweise probiert, vorne stehen die Chips die auf den Modulen jeweils steckten


Quellcode:
2*V53C104BK70,               1*V53C256AJ70        *** ERROR 71   <0F> FFFE  33
2*OKI-M514400C-70SJ          1*BP41C1000D-6       OK
9*HY53C256                                        *** ERROR 71   <0F> FFFE  00
3*Panasonic-MN414400ASJ-70                        OK

WEGA bootet gerade mit 4MB des 2. Typs.

Ich habe noch 2 einzelne Module hier rumliegen von denen ich nicht die Kapazitaet weiss:

2*MT4C4001JDJ-7, 1*MI514100J-70
2*<kein Label>, 1*HYB511000BJ-70

Weiss einer ob das 1 oder 4MB Module sind? Beides sind jedenfalls nicht 4MB Module - habe sie zusammen in einer Bank als 4er versucht mit

*** ERROR 71 <5E> FFFE 00

als Ergebniss
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 29.07.2009 um 20:12 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
191
29.07.2009, 20:19 Uhr
Enrico
Default Group and Edit


Mit dem RAMs hatte ich keine Probleme.
Egal ob, da 4 Bit oder 1 BIT RAMs drauf sind.

256 k Riegel gehen natürlich nicht (1. und 3. Punkt im Kasten)

die 2 ersteren RAMs könnten 4 MB sein.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
192
29.07.2009, 20:24 Uhr
Olli

Avatar von Olli

du meinst das Modul mit "2*MT4C4001JDJ-7, 1*MI514100J-70" koennte ein 4MB Modul sein? Davon habe ich ja leider nur eins die 2* ist die Bestueckung...

Kernel compilieren geht bei mirr uebrigens auch wie bei holm nicht:

#define MD19 0

Do you want to change file system layout ? : n

und da haengt sich csh dann auf. Mal NMI getriggert:

NMI (manual)

STATE @3E00FFD6 eventid=FFE1, fcw=1840, pcseg=3F00, pcoff=130
r0:12 r1:2718 r2:0 r3:200 r4:0 r5:24CE r6:1 r7:200
r8:0 r9:0 r10:0 r11:24CA r12:101 r13:0 r14:2A2C r15:FBFC
System sp= 3E00FFB6
Last VI serviced: clock
Pending VIs:
Scheduler- st: 1 fl: 3 wchan: FE3A
Command: csh, Non-Segmented programm, Real user id= 0
Proc ptr: 300E108 Break addr: 2F tsize: 97 dsize: 2F
Code seg base:6A1 size:96 attr:1
Data seg base:605 size:2E attr:0
Stack seg base:54A size:EA attr:20
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 29.07.2009 um 20:24 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
193
29.07.2009, 20:50 Uhr
holm

Avatar von holm

Bei mir ist die Karte nicht wählerisch mit dem RAM Typ, ich kann eigentlich 1 und 4 MB Module bestücke wie ich will, der Effekt ist zumindest momentan noch der Selbe.
Ich warte jetzt einfach mal diese LCC Bilderei ab und mache das mit original RAMs ehe
ich über das Verhalten der RAMKarte weiter philosophiere...
Allerdings habe ich der Verzögerumgszeiten nach Oszi etwas angepaßt, habe aber derzeit nicht im Kopf was da für Rs und Cs bestückt sind. Für den Kernel-Bau Fehler war das allerdings unerheblich.
Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
194
29.07.2009, 21:07 Uhr
Olli

Avatar von Olli

Naja, wenn ich es mit 256K-Modulen versuche ists klar - hatte ich nich drueber nachgedacht. Hatte alles erstmal fuer 1MB gehalten - Hab das alte 486er-EISA+VL-Board und meine restlichen Bestaende schon zu lange nicht mehr in Betrieb gehabt
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
195
29.07.2009, 21:31 Uhr
Enrico
Default Group and Edit



Zitat:
Olli schrieb
du meinst das Modul mit "2*MT4C4001JDJ-7, 1*MI514100J-70" koennte ein 4MB Modul sein? Davon habe ich ja leider nur eins die 2* ist die Bestueckung...

ja.

Zitat:
Kernel compilieren geht bei mirr uebrigens auch wie bei holm nicht:

#define MD19 0

Do you want to change file system layout ? : n

und da haengt sich csh dann auf. Mal NMI getriggert:

NMI (manual)

STATE @3E00FFD6 eventid=FFE1, fcw=1840, pcseg=3F00, pcoff=130
r0:12 r1:2718 r2:0 r3:200 r4:0 r5:24CE r6:1 r7:200
r8:0 r9:0 r10:0 r11:24CA r12:101 r13:0 r14:2A2C r15:FBFC
System sp= 3E00FFB6
Last VI serviced: clock
Pending VIs:
Scheduler- st: 1 fl: 3 wchan: FE3A
Command: csh, Non-Segmented programm, Real user id= 0
Proc ptr: 300E108 Break addr: 2F tsize: 97 dsize: 2F
Code seg base:6A1 size:96 attr:1
Data seg base:605 size:2E attr:0
Stack seg base:54A size:EA attr:20

Das heisst?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
196
29.07.2009, 22:08 Uhr
Olli

Avatar von Olli

Nun - was ich da so erkennen kann sind die Registerinhalte... danach hoerts dann langsam auf
LCC compiliert er mit dem RAM Modul uebrigens recht weit - ich muss nun aber abbrechen da ich ins Bett will
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
197
01.08.2009, 19:34 Uhr
Olli

Avatar von Olli

Nur so zur Info - recht weit am Ende verabschieded sich auch der LCC-Compile beim rm:


Quellcode:
ar rv Llibm.a asin.o atan.o erf.o fabs.o floor.o fmod.o gamma.o hypot.o jn.o j0.o j1.o pow.o log.o sin.o sqrt.o tan.o tanh.o sinh.o exp.o matherr.o
ar: creating Llibm.a
a - asin.o
a - atan.o
a - erf.o
a - fabs.o
a - floor.o
a - fmod.o
a - gamma.o
a - hypot.o
a - jn.o
a - j0.o
a - j1.o
a - pow.o
a - log.o
a - sin.o
a - sqrt.o
a - tan.o
a - tanh.o
a - sinh.o
a - exp.o
a - matherr.o
        rm asin.o atan.o erf.o fabs.o floor.o fmod.o gamma.o hypot.o jn.o j0.o j1.o pow.o log.o sin.o sqrt.o tan.o tanh.o sinh.o exp.o matherr.o
94 Memory fault - core dumped
#

Wenn ich jetzt noch mit diesem Urzeitdebugger adb umgehen koennte....


Quellcode:
# adb core
ADB: P8000 1.6
? ?
%1a18:          %0005  =addb    rh5,#%0e


--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 01.08.2009 um 19:34 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
198
01.08.2009, 19:46 Uhr
Enrico
Default Group and Edit


brrr.

Da sind die böhmischen Dörfer doch viel verständlicher.

Und da sagst Du nun das HW-Programmierung in Assembler schwieriger ist.
Ne, ne....
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
199
08.08.2009, 01:37 Uhr
Enrico
Default Group and Edit


Soo, mit was könnte ich dann mal den RAM ärgern, ohne das ich mir gleich auch noch die Platte zerschiesse?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
200
08.08.2009, 05:52 Uhr
Olli

Avatar von Olli

Dabei haengt sich die P8000 immer auf:


Quellcode:
5.5.  Generierung des Kerns

Die Generierung eines neuen Kerns erfolgt im Directory

/usr/sys/conf

durch die Eingabe des Kommandos:

sysgen

also mit cd ins Verz. wechseln und sysgen eingeben, die Fragen da beantworten und dann winke winke....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
201
08.08.2009, 10:40 Uhr
holm

Avatar von holm

Mir ist da in der HW Doku noch Folgendes aufgefallen:

Quellcode:
Bei Bytezugriffen wird mit dem Adressbit A0 gekennzeichnet,
ob es sich um ein Low-Datenbyte (A0=1) oder High-Datenbyte
(A0=0) handelt.    Zwischen    Lesen   und   Schreiben    sind
Unterschiede zu beachten:
Bytelesen:     Die CPU trifft die Auswahl selbst, d.h. der
               Zustand    von   A0   ist fuer den Speicher
               unwichtig,     beide    Datenbytes      koennen
               adressiert und wie beim Wortzugriff parallel
               auf den Datenbus gelegt werden.
Byteschreiben: Die CPU legt das zu schreibende Datenbyte auf
               beide Teile des Datenbus. Der Speicher muss
               mittels A0 die zu adressierende Speicherbank
               auswaehlen.

Ggf. sollte man mal gucken, ob das in der originalen Schaltung irgend eine Berücksichtigung findet die Enrico so nicht getroffen hat.....

Ich habe diesbezüglich noch nicht geforscht.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
202
08.08.2009, 11:41 Uhr
Enrico
Default Group and Edit


Ist eigentlich schon drin, vielleicht aber noch was falsch.
Das müsste doch aber eigentlich beim RAM Test auffallen.
Ausserdem wäre das komisch, wenn das Wega sonst keinen 8 Bit RAM Zugriff macht.
Allein schon wegen dem WDC müsste das doch mit 8 Bit im RAM landen.

Ich probiers erstmal mit dem alten RAM und dann mal weitersehen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
203
08.08.2009, 11:43 Uhr
Enrico
Default Group and Edit


Für sowas wäre es nicht schlecht, wenn man eine RAM-Floppy einrichten könnte. Oder Swappen ins RAM verlagern
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
204
08.08.2009, 11:49 Uhr
holm

Avatar von holm

Mit der RAM Floppy, ist das jetzt ein Witz? Willst Du die Daten dann noch kaputter machen? *grin*

Nach meiner Erinnerung hast Du die RAMs voll ausdekodiert, was ja theoretisch auch nicht schaden kann. Die "Schaltung" ist doch nun ziemlich identisch zu dem, was die Originalkarten machen, aber trotzdem spinnt Ollis und meine Karte mit identischen Symptomen obwohl bie beiden der RAM Test durchläuft.

Irgendwas haben wir übersehen, aber was?
Mir war halt die obige Stelle beim Lesen nur aufgestoßen und ich dachte, wirfst es mal in die Diskussion...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
205
08.08.2009, 14:15 Uhr
Enrico
Default Group and Edit


Ja stimmt, war Blödsinn.

Mit dem org. RAM geht das schon mal. Wie erwartet. Sogar erstaunlich schnell. Ich dachte der Rechner klappert da stundenlang rum.

Die RAM Karte werde dann erst nachmal "Händisch" ausprobieren, noch ein bisschen rummessen.

Wenn man wenigstens eine 2. baugleiche Platte anschliessen und sektorweise rüberkopieren könnte, wäre es schon einfacher.
Aber das geht bestimmt auch nicht?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
206
08.08.2009, 15:14 Uhr
holm

Avatar von holm

Doch, das mit der Platte sollte gehen, zumindest Filesystemweise.

Du mußt auf der jeweils leeren Platte die filesysteme identisch anlegen.
wega booten und müßtest mit dd kopieren können. Ich weiß nicht, ob man dem Kern
über die Geometrie der 2. Platte Bescheid geben muß, aber prinzipiell geht das.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
207
08.08.2009, 15:36 Uhr
Enrico
Default Group and Edit


Ich weis nur, dass die Platten die gleiche Geometrie haben müssen.

Dann macht mich doch bitte mal schlau, wie das geht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
208
08.08.2009, 17:02 Uhr
holm

Avatar von holm

Naja unter WEGA habe ich das noch nicht getestet, aber das funktioniert so:

Normalerweise behandelt ein Unix System alle Geräte als Dateein, so auch die Platten.
Die Device Treiber Einträge findet man unter /dev .
Für die Floppys gibts da z.B. die Einträge fd0xx und fd1xx. Das fd096ds9 der Eintrag
für das Diskettenlaufwerk0, 96tpi doppelseitig mit 9 Sektoren ist, weißt Du sicher.

Das ist aber nur der Name für die Menschen, der Name für Wega sind die sogenannte Major und Minor Nummer des Device Files.
ls -l brint z.B. zu Tage:

brw-rw-rw- 2 wega system 1, 96 Jul 17 08:00 /dev/fd096ds9
brw-rw-rw- 2 wega system 1, 97 Jul 24 1999 /dev/fd196ds9

Daraus ist zu ersehen, das der Floppy Treiber die Major 1 und für die beiden Geräte beim selben Format die 96 und die 97 als Minor Nummer hat. Diese beiden Geräte
arbeiten Blockorientiert und verarbeiten vielfache von 512 Bytes.
In der Minor Nummer ist das gewünschte Diskettenformat und die Nummer des Gerätes Bitweise codiert.

Es existieren dazu noch zeichenorientierte Geräte die wir für die Floppys auch finden:

crw-rw-rw- 2 wega system 1, 96 Jul 17 08:00 /dev/rfd096ds9
crw-rw-rw- 4 wega system 1, 97 Jul 17 08:00 /dev/rfd196ds9

Das erste Zeichen des Listings weist auf diesen Umstand mit b für Block und c für Character hin. Ein Floppycontroller kann natürlich aber keine einzelnen Character
auf die Diskette schreiben, sondern nur ganze Sektoren, die aber je nach eingestellter Sektorsize auch 128 oder 256 Byte groß sein können, während ein Blockdevice immer 512 Byte weise arbeitet.


Es gibt unter den Unixen ein ziemlich universelles Kopierprogramm namens dd
mit dem es nun möglich ist, direkt von Geräten zu lesen und auf diese zu schreiben

dd if=/dev/fd0 of=/dev/fd1

kopiert Dir z.B. die Diskette in fd0 blockweise auf fd1, das Programm versteht noch eine ganze Reihe weiterer Parameter, kann normalerweise (weiß nicht bei Wega)
ascii in EBCDIC umsetzten, mit Offsets arbeiten usw.
Es wird hier so lange kopiert bis das Ding auf ein Dateiende des Eingabedatenstroms läuft, unter Wega meckert das dann mit einem Fehler rum, was etwas "roh" ist.
Besser unter Wega funktioniert das:

dd if=/dev/fd0 of=/dev/fd1 count=1440

dann hört das Ding auf, wenn die 1440 Blöcke erreicht sind.

Ich habe Dir nun nicht umsonst die Geschichte mit den Floppies vor die Nase gesetzt,
bei den Platten ist das bei WEGA etwas komplizierter.

Es existieren z.B. folgende Einträge für die Platten:
brw-r----- 2 bin system 0, 0 Jul 17 08:00 md0
brw-r----- 2 bin system 0, 2 Jul 17 08:00 md2
brw-r----- 2 bin system 0, 3 Jul 17 08:00 md3
brw-r----- 2 bin system 0, 4 Jul 17 08:00 md4
brw-r----- 2 bin system 0, 0 Jul 17 08:00 usr
brw-r----- 2 bin system 0, 4 Jul 17 08:00 z
brw-r--r-- 1 bin system 0, 1 Jul 17 08:00 swap
brw-r----- 2 bin system 0, 2 Jul 17 08:00 root

Wie Du siehst ist das zum Teil doppelt, d.h. md0 ist gleich usr, md2 ist gleich root
usw, für Anderes gibts gar keinen 2. Eintrag.

Der WEGA Kern "partitioniert" das eigentliche Device Platte, einen Eintrag für die ganze Platte gibt es offensichtlich nicht und ich habe mich noch nicht darum gekümmert ob der Treiber einen Eintrittspunkt dafür hat. Dafür müßte man die Minor Nummer herausbekommen und kann dann mit mknod eine "Devicedatei" anlegen.

Zumindest die Major Nummer für die 2. Platte bekomme ich noch heraus, da hier noch die 2. P8000 mit 2 Platten steht, es gibt aber auch ein Install Script auf der Bootdiskette, in der das zu finden ist.

So wie es aussieht, müßte man erst einen WEGA Kern für 2 Platten generieren und
für die 2. Platte identische Filesystemgrößen und Offsetts eintragen, damit der Kern damit umgehen kann. danach kann man die erste Platte mit dd Filesystemweise auf die 2. Platte kopieren und hätte ein identisches Abbild.
Mach das bitte erst mal nicht, mit dd kannst Du Alles kaputt kopieren, das Ding fragt Dich nach gar nichts, zeigt Dir keine Parameter an und fragt nicht, ob Du wirklich
willst sondern macht einfach los...

Ich habe jetzt mal die 2. Kiste angeblasen, in /usr/sys/h speichert sysgen die Geometrien für die Platten die abgefragt und in den Kern gebastelt werden:


#define USR 13000
#define SWAP 3000
#define ROOT 7000
#define TMP 4000
#define Z 60732
#define MD5 0
#define MD6 0
#define MD7 0
#define MD8 0
#define MD9 0

#define MD10 40000
#define MD11 47732
#define MD12 0
#define MD13 0
#define MD14 0
#define MD15 0
#define MD16 0
#define MD17 0
#define MD18 0
#define MD19 0

Wie Du siehst hat das Ding 2 identische Platten (sonst würde der WDC schimpfen)
die 1. ist in 5 Partitiionen eingeteilt die 2. in 2.

Jede Partition ist durch Ihre Länge und den Offset gekennzeichnet, der Offset ergibt sich hier durch die Länge der vorhergehenden Filesysteme.
So gibts auf der 2. Platte ein Filesystem mit 40000 Blocks und Offset 0 und eines mit
47732 und Offset 40000.
Dafür gibts dann auch die Device Einträge in /dev:

#9 ls -l /dev/md*
brw-r----- 2 bin system 0, 0 Jul 21 1989 /dev/md0
brw-r----- 1 bin system 0, 10 Sep 3 02:52 /dev/md10
brw-r----- 1 bin system 0, 11 Sep 3 02:52 /dev/md11
brw-r----- 2 bin system 0, 2 Jul 24 10:40 /dev/md2
brw-r----- 2 bin system 0, 3 Jul 21 1989 /dev/md3
brw-r----- 2 bin system 0, 4 Jul 21 1989 /dev/md4

alle Klarheiten beseitigt?

Gruß,

Holm

Das Kommando df gibt Dir übrigens aus wieviel Platz auf den Filesystemen noch ist:
#19 df
/ (/dev/root ): 825 blocks 1935 i-nodes
/z2 (/dev/z2 ): 45807 blocks 15261 i-nodes
/z1 (/dev/z1 ): 38392 blocks 12797 i-nodes
/z (/dev/z ): 41567 blocks 18662 i-nodes
/tmp (/dev/tmp ): 3832 blocks 1275 i-nodes
/usr (/dev/usr ): 507 blocks 3058 i-nodes

Auf /z1 und /z2 ist kaum was, da gehen nur die Verwaltungsinformationen der Filesysteme selbst und die Einträge für lost+found weg.
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 08.08.2009 um 17:07 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
209
08.08.2009, 17:37 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
alle Klarheiten beseitigt?

Ja, und wie.
Mir sagt nur dd was, vom hörensagen und aus der Ct.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
210
08.08.2009, 17:54 Uhr
holm

Avatar von holm

Naja, ich habe ja gesagt es müßte funktionieren, ich habe nicht gesagt das das für einen der da noch nicht reingerochen hat einfach ist.

Probiere doch mal mit dd und disketten herum..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
211
08.08.2009, 23:33 Uhr
Enrico
Default Group and Edit


Die RAS-CAS Verzögerung hat bei mir 100 ns. Das dürfte höchstwarscheinlich schon mal viel zu viel sein. Der RAM Test wird ja ohne die MMUs gemacht. Die brauchen selber auch eine gewisse Zeit, um die Adressen zu übersetzen, also könnte das schon mal der Grund sein.
probier ich mal aus.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
212
09.08.2009, 01:34 Uhr
Enrico
Default Group and Edit



Zitat:
Enrico schrieb
Die RAS-CAS Verzögerung hat bei mir 100 ns. Das dürfte höchstwarscheinlich schon mal viel zu viel sein. Der RAM Test wird ja ohne die MMUs gemacht. Die brauchen selber auch eine gewisse Zeit, um die Adressen zu übersetzen, also könnte das schon mal der Grund sein.
probier ich mal aus.

Edit: OK, war nix. Hatten wir vor längerer Zeit schon mal.

Aber nun sieht das Signal wenigstens bessser aus.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
213
09.08.2009, 09:53 Uhr
holm

Avatar von holm

Was hast Du denn geändert?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
214
09.08.2009, 13:48 Uhr
Enrico
Default Group and Edit


Die RC-Glieder auf 22pF / 1,8k, R14 / R16 470 Ohm.

Beim GAL habe ich nun alles rausgeschmissen, was nicht für 2 MB gebraucht wird. Ausserdem so angepasst, das es dichter am Original ist.

Beim /WE für die RAMs ist auch noch /DS drin. Mache ich das geht gar nix mehr. Verstehe ich nicht.
--
MFG
Enrico

Dieser Beitrag wurde am 09.08.2009 um 13:50 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
215
09.08.2009, 21:02 Uhr
Enrico
Default Group and Edit


H-Byte / L-Byte hatte ich mal absichtlich mit A0 / /A0 falschrum ausdekodiert.
Das wird schon beim Speichertest mit Fehler 71 quittiert.

Gibt es da eine Möglichkeit den RAM vollzumüllen?
Z.B. VI starten und eine grosse Datei laden?
Oder wird das dann wiederum ausgelagert?

Ich frage mich wodurch genau die Fehlermeldung "out of Memory" kommt.
Am nicht vorhandenen RAM kanns ja nicht liegen. Wega funktioniert selber ja auch. Alles merkwürdig.
--
MFG
Enrico

Dieser Beitrag wurde am 09.08.2009 um 21:03 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
216
09.08.2009, 21:11 Uhr
holm

Avatar von holm

Wie Du schon vermutet hattest wird das mit Vi nix, der bearbeitet einfach einen Ausschnitt des Editorbuffers.
Es gibt kleine Testprogramme für sowas, die fordern nach und nach mehr Speicher an,
allerdings muß das durchaus nicht an den RAM Grenzen des Systems scheitern, sondern eher am Kernelparameter für den maximal per Prozess allozierbaren Speicher.
Ich bin mit ziemlich sicher, das dieses "out of memory" eine falsche Fehlermeldung ist.
Ich habe noch keine Rechte Idee woran das liegen könnte, eher an sowas das ein Speicherbereich in einen anderen abfärbt oder sowas..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
217
10.08.2009, 00:25 Uhr
Enrico
Default Group and Edit


Irgendwie ist das schon komisch. Einerseits muss es was an der HW sein, anderseits kanns das ja nicht sein.

Du schriebst ja schon mal:


Zitat:
holm schrieb
esit: mit 2MB originalram funktioniert das erwartungsgemäß..

Also funktionert das ja auch mit Original 2 x 1 MB Karten?

Wo ist der Unterschied?

Die Adressen werden dort natürlich zum muxen anders verschaltet. Das hat aber nur mit dem Refresh zu tun.
Sonst ist es doch egal?

Dann machen die Read-Modifiy-Write, weil (lt. HW-HB) dadurch das Timing nicht mehr so knapp ist.
Also RAS-CAS, Adressen sind im RAM, nachder Zugriffszeit werden die Daten ausgegeben, dann kommt mal /WR zu den RAMs.
Dort geht das ja auch, weil bei den DIP-ICs DI und DO getrennt sind.

Bei den SIMMS muss das early-write sein.
D.h. dass das dort prinzipbedingt die Daten später raus-/rein kommen.
dafür sind die RAMs aber wiederum schneller. Ich habe aktuell
2 x 1MB mit 80 ns drin.

Meine org. 256k RAMkarten haben 120 ns. Kann durchaus sein, dass die trotzdem schneller sind, weil sie anders angesteuert werden.

Nun ist die Frage wie das alles zusammenwirkt.

RAM-Test ist immer fehlerfrei, Refresh geht mittlerweile ja auch.

Unter Wega funktioniert das auch.(sonst würde es abschmieren)
Ein Program wie ls läuft auch, brauch ja nicht viel Speicher.

Was passiert, macht WEGA anders, wenn ein Prog viel RAM anfordert?
Bei SYSGEN könnte ja genau das der Fall sein.
Was wird mit den MMUs gemacht?
Sind die im Prinzip statisch auf best. phys. Adressen geschaltet, und schalten nur um, wenn ein Prog mehr RAM haben will, oder werden die immer irgendwie hin-und hergeschaltet?

Es könnte ja z.B. sein, dass die RAMs so zwar schnell genug sind, wenn aber MMUs schalten (brauchen ja auch Zeit zum umschalten) plus Zugriffszeit der RAMs, genau nur dann der Zugriff nicht mehr rechtzeitig klappt, und nur dann angebl. der Speicher aus ist?

Wäre doch ne Möglichkeit?

Welche Programme gibt es denn so die viel RAM haben wollen?
Tabellenkalkulation, Textverarbeitung?
--
MFG
Enrico

Dieser Beitrag wurde am 10.08.2009 um 00:29 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
218
10.08.2009, 07:52 Uhr
holm

Avatar von holm

Ich denke, Du kannst Dir getrost den Zahn mit "viel RAM anfordern" ziehen lassen.
Den Systemkern kann man auch mit 1MB RAM übersetzen, ich habe noch keine Abmagerungskur versucht aber man kann ja auch mal mit 1 oder 2 256er Karten
experimentieren...

Das was bei sysgen passiert ist, das die shell abschmiert.
sysgen liegt glaube ich in /etc und ist ein shellscript. Man kann die Kommandos da drin auch einzeln und zu Fuß abschicken. Schaue Dir das Ding doch mal mit more /etc/sysgen an.

Die Symptome sind bei Dir, Olli und mir identisch, mit Zugriffszeiten bzw. der Verzögerungskette habe ich auch gespielt und ich habe 60er SIMMs genommen,
keine Änderung. Wie die ganze Speicherverwaltung mit den MMus im Einzelnen funktioniert weiß ich wirklich nicht. Den Schraddel habe ich mir noch nicht angetan.

Glaube mir, wenn ich einen Ansatz hätte, was das noch sein könnte, währe ich dem nachgegangen, ich habe es aber erst mal zu Seite gelegt weil mir nix mehr einfiel,
genauso wie ich jetzt meinen WDC von Olli erst mal zu Seite lege, auch dort finde ich diesen sporadisch auftretenden Fehler nicht, wer weis, ist vielleicht eine unterbrochene Leiterbahn..

In Wega laufen mehrere Prozesse im Speicher, wenn Jemand RAM nafordert und es ist keiner frei, werden Programme die derzeit nicht benötigt werden in den Swap Space auf der Platte ausgelagert, Du weist auf Grund dieses virtuellen Speichers
nie, wo im Speicher sich Dein Programm befindet oder welche Teile davon auf gerade auf der Platte sind. Das ist ja eigentlich der Vorteil von virtuellem Speicher.

Ich denke weiter drüber nach. Eigentlich müßte man eine Mimik mit 2 Speichern bauen die bei Differenzen sofort Alarm schlägt, das ist aber ein barbarischer Aufwand.
Man könnte höchstens versuchen diese Paritymimik nachträglich zur Fehlersuche ran zu tüddeln aber selbst dabei habe ich das ungute Gefühl, das wohl kein Paritätsfehler auftreten wird.

Ich habe auf meiner Karte übrigens 74LS, 74ALS, 74F, und auch 74S stecken, Symptome identisch..

BTW: Hast Du Deine 1. handverdrahtete Version noch? Hast Du die mal aktualisiert (Refresh) und getestet?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 10.08.2009 um 10:35 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
219
10.08.2009, 09:11 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb

BTW: Hast Du Deine 1. handverdrahtete Version noch? Hast Du die mal aktualisiert (Refresh) und getested?

Da habe ich nichts mehr mit gemacht.
Wäre ne Möglichkeit, was zu probieren.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
220
10.08.2009, 17:28 Uhr
Olli

Avatar von Olli

Ich habe uebrigens eine WEGA Startdisketten welche eine Festplatte 1:1 kopiert auf eine andere Festplatte.... habe es aber noch nie ausprobiert.
auf meiner /P8000/arch Seite - w31star2.cqm "fk" sollte das Programm heissen - so startbar wie sa.verify nehme ich mal an...
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
221
10.08.2009, 18:15 Uhr
Enrico
Default Group and Edit


Könntest Du das mal machen?
Das müssen odoch da dann bestimmt auch 2 gleiche Platten sein?
Ausgerechnet die kaputte Platte, ist die einzige die doppelt da ist.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
222
10.08.2009, 18:17 Uhr
Olli

Avatar von Olli

Ja, muessen auch 2 gleiche Platten sein... das muessen es immer sein an der P8000 (Plattenparameter werden ja nur einmal gelesen).
Funktionieren sollte es bzgl. aufrufen wie sa.format...
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
223
10.08.2009, 18:35 Uhr
holm

Avatar von holm

Es gibt keinen technischen Grund das es 2 gleiche Platten sein müssen, die waren halt einfach mit der Firmware noch nicht fertig. Es reicht aber, wenn die Platten die gleiche Anzahl Köpfe und Zylinder haben und man kann in dieser Hinsicht schwindeln.
Solange die beiden Parameter eine Untermenge der größeren Platte sind, kann man die Parameter der kleineren Platte für beide verwenden.

Richtig ist, das das wahnsinnig hinderlich in heutigen Zeiten ist.

Gruß,
Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
224
10.08.2009, 19:29 Uhr
Olli

Avatar von Olli

Jo... technisch gibts natuerlich keinen Grund. Ist Firmwareseitig natuerlich denkbar die Parameter fuer die 2 Platten parallel zu handhaben. Sogar RAID ist denkbar - 0 will man bei den Platten aber natuerlich nicht 1 Waere ganz nett bei dem Alter der Platten, aber da brauch man auch schon wieder 2 gleiche - oder halt eben eine welche aehnliche Parameter hat...
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
225
10.08.2009, 20:02 Uhr
Enrico
Default Group and Edit


Hört sich nach nen Plan an.


Was hat der Rechner eigentlich auf der A21 rumzugurken, obwohl ich nur 2 MB RAM drin habe? Es reicht schon, wenn ich auf die Entertaste drücke.
--
MFG
Enrico

Dieser Beitrag wurde am 10.08.2009 um 20:03 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
226
10.08.2009, 21:10 Uhr
holm

Avatar von holm

Das kann IO Arbeit sein, muß mit RAM überhaupt nix zu tun haben.
Ich weiß jetzt nicht was im Z8000 Manual zu Ein- Ausgabe hinsichtlich der höherwertigen Adreßbits steht..

BTW: Bist Du sicher das Du an diesem WDC noch irgendwas planen willst?
Doch eher neuer Controller von mir aus mit IDE und nachgebautem Interface
zum 16 Bit Teil. Eine 2. Platte braucht man dann eigentlich nur noch um Installationen
zu kopieren. Die Anzahl der verarbeiteten Funktionen des Controllers ist doch mehr oder weniger übersichtlich...

Ich habe eine ganze Weile mit der ST251 und dem WDC rumgemacht und habe z.B. herausbekommen das, wenn diese an unterschiedlichen Netzteilen hängen die Fehler
erst deutlich später produzieren.
An ein und dem selben WDC flog mit Originalnetzteil schon sa.mkfs reproduzierbar auf die Nase, wenn die Platte(n) an einem extra Netzteil hingen erst ziemlich weit hinten bei der Installation. Ich habe das Gefühl die Inkompatibilität dieser Platten beschränkt sich auf ordentliche Strombursts beim positionieren...
endgültig erforscht habe ich das aber auch nocht nicht.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
227
10.08.2009, 23:48 Uhr
Enrico
Default Group and Edit


Eigentlich nicht wirklich. Es ging ja auch nur darum die Platte zu spiegeln, bevor ich die zerschiesse.
Passiert bei SYSGEN aber nun doch nicht.

Das mit der Platte würde doch aber bedeuten, dass die zu knapp dimensioniert sind?
--
MFG
Enrico

Dieser Beitrag wurde am 10.08.2009 um 23:50 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
228
10.08.2009, 23:55 Uhr
holm

Avatar von holm

...die was? Die Netzteile wohl eigentlich..

Bei mir gibts nur ein Netzteil für 8+16Bit+WDC +2 Platten und 2 FLoppies..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
229
11.08.2009, 00:02 Uhr
Enrico
Default Group and Edit


Bei mir sind NT vom Rechner und WDC extra.
Das von der Compact sollte doch mehr Lestung haben.
--
MFG
Enrico

Dieser Beitrag wurde am 11.08.2009 um 00:03 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
230
11.08.2009, 00:44 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Das kann IO Arbeit sein, muß mit RAM überhaupt nix zu tun haben.
Ich weiß jetzt nicht was im Z8000 Manual zu Ein- Ausgabe hinsichtlich der höherwertigen Adreßbits steht..

Habs doch noch gefunden. Die Segmentnummern sind bei I/Os nicht definiert.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
231
11.08.2009, 08:49 Uhr
Tom Nachdenk



Kann das sein das Du da Zugriffe auf das ROM siehst? Meines Wissens wird der nach der Initialisierung hinter den RAM gemapt.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
232
11.08.2009, 14:43 Uhr
Enrico
Default Group and Edit


keine Ahnung, das weis ich nicht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
233
11.08.2009, 15:32 Uhr
Tom Nachdenk



Steht meines Wissens im Hardwarehandbuch. Evtl. könnte man das auch mit einem Logikanalyzer verifizieren.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
234
12.08.2009, 00:47 Uhr
Enrico
Default Group and Edit


Gibt es ein Scahltungsbeispiel zum Einfügen von WAIT beim Speicherzugriff?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
235
15.08.2009, 18:45 Uhr
Enrico
Default Group and Edit


So, Ihr 2 Experten, könnte es sein, dass die die P8000 ausschliesslich dazu entwickelt haben, um die Russen perfekt zu verwirren?

Ich habe jetzt die K5504.50 wieder drin. Dazu meine fertig geroutete RAM-Karte mit 2 MB drin.

Die Platte will nun wieder booten, wollte ja erst nicht, nach dem ich den WDC von Holm wieder bekommen habe.

Das schöne ist nun, genau damit zieht SYSGEN durch.

Gleiche Config, nur andere Platte, nämlich die NEC D3242.
Da kommt die Fehlermeldung "Out of Memory".

Ich habe 2 x hin und her getauscht, das ist reproduzierbar.

Olli, Du hattest mir ja beide Platten mal eingerichtet und Wega draufgespielt.

Hängt das villeicht mit den Sektoren zusammen?

Eigentlich darf man ja nur mit 17 Sektoren formatieren, bei der P8000 darf man auch mit 18.
Ich hatte damit allerdings schon immer Probleme.
--
MFG
Enrico

Dieser Beitrag wurde am 15.08.2009 um 18:47 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
236
15.08.2009, 21:07 Uhr
Olli

Avatar von Olli

bei mir kommt nicht out of memory - meine Kiste haengt sich kommentarlos weg mit der RAM Karte und SYSGEN.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
237
15.08.2009, 23:30 Uhr
Enrico
Default Group and Edit


Komisch, bei mir kam immer nur das als Fehler.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
238
15.08.2009, 23:57 Uhr
holm

Avatar von holm

Hey, ich komme gerade untern vom Hof, wir haben einen Kesselgulasch zelebriert
und ein paar kleine Whiskey..

Naja.

Möglich ist grundsätzlich mit unzuverlässigem RAM Alles.
Der EInbau einer anderen Platte kann dafür sorgen das andere Buffergrößen alloziert werden und Sachen in andere Bereiche rutschen, von denen wir derzeit keine Ahnung haben... Alles klar?

Das mit den 17 Sektoren dürfen ist nicht so. Im Prinzip kannst Du auf die Scheibe draufmalen was Du willst, Du mußt halt beim Lesen nur damit zurecht kommen, was zurück kommt. Wenn Du einen Superduper Leseverstärker mit einer ordentlichen Taktrückgewinnung hast, kannst Du auch 27,6 Sektoren da drauf prügeln, die Platte kümmert sich nicht drum. Das ist nur ein platt geklopftes Magnetband...

Von RLL wußten die Platten beim ersten Controller auch Nichts.

EAW hat ausgerechnet, das 18 Sektoren möglich sind (sind sicher bei PC Hardware auch möglich, alles eine Frage der Gaps) und das durchgezogen. Das die WDCs in Summe eher beschissen funktionieren, ist eine ganz andere Frage...

Das das Sysgen auf die Gusche fliegt ist EIN Symptom, ein LCC Build wird es sicher genauso tun.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
239
16.08.2009, 00:05 Uhr
Enrico
Default Group and Edit


Tja, blos wenns mit der Platte nun geht?
Was soll ich denn dazu anderes sagen.

Beim PC hatte ich das schon mal mit 18 Sektoren versucht, das geht nicht.

Das man der Platte irngednwas hin schicken kann ist mir schon klar, aber die Magnetschicht ist ja nun eigentlich nicht für höhere Bitdichten gedacht.

Ist nur die Frage, wie ich da sonst noch, irgednwie anders was rauskriegen kann.

Erstmal wieder mehr RAM drauf.

Davon mal abgesehen haben beide Platten die gleiche Kapazität, nur eine etwas andere Geometrie.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
240
16.08.2009, 00:42 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Möglich ist grundsätzlich mit unzuverlässigem RAM Alles.
Der EInbau einer anderen Platte kann dafür sorgen das andere Buffergrößen alloziert werden und Sachen in andere Bereiche rutschen, von denen wir derzeit keine Ahnung haben... Alles klar?

Müsste das denn nicht anhand der RAM-Grösse ausgemacht werden, wo was hinkommt?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
241
16.08.2009, 05:52 Uhr
holm

Avatar von holm

Ja, auch mit der RAM Größe. Verschiedene Kernelparameter werden dynamisch zugewiesen je nach dem was der Kern vorfindet beim Booten.
Das betrifft natürlich hauptsächlich den RAM, aber evtl .auch Plattengrößen.

Was da konkret gemacht wird weiß ich aber bei WEGA nicht.


Das mit den 18 Sektoren am PC wird nix, das ist klar. Das ist einfach nicht vorgesehen.
Da aber EAW hier zu nichts kompatibel sein mußte geht das schon, der Kontroller macht hat kürzere Lücken zwischen die Sektoren und etwas Platz ist "hinten auf der Spur" meist eh noch. Das hat also mit der Bitdichte und der Schreibfrequenz nichts zu tun.

Gruß,
Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 16.08.2009 um 06:02 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
242
16.08.2009, 07:40 Uhr
Olli

Avatar von Olli

Dem WEGA Kern ist wurscht was da fuer ne Platte am WDC haengt. Wieviel Sektoren die hat und ueberhaupt - der WEGA Kern kennt nur seine Partitionsgroessen und die sind in Bloecken a 512 Byte angegeben. Wie der WDC das auf seine Platte packt ist WEGA egal. Es wird immer in 512 Byte-Bloecken rueckgelesen und geschrieben.

Ein LCC Build bricht irgendwann auch ab - Siehe Posting 197 - Memory Fault.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 16.08.2009 um 07:40 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
243
16.08.2009, 10:58 Uhr
Enrico
Default Group and Edit


OK, überredet. Dann geht die Suche mal weiter.
Mal sehen, was mit Wait-Logik rauskommt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
244
22.08.2009, 19:27 Uhr
Olli

Avatar von Olli

Wie waere es damit:

1. Kernel so modifizieren, das er keinen swap mounted (also nur den RAM als Speicher hat)
2. Einen Testfall ermitteln der moeglichst kurz ist, und das System zum haengen bringt
3. Die Daten welche in den RAM rein- und rausfliessen komplett protokollieren und dann im Anschluss vergleichen.

1. koennte ich uebernehmen (denke ich - muss ich mir angucken ob es so trivial ist wie ich denke)
2. Muss man gucken
3.... geht das ueberhaupt - waere erheblicher Aufwand, oder?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
245
22.08.2009, 22:23 Uhr
Enrico
Default Group and Edit


Das könnte da wirklich weiter helfen.

Ich habe noch nicht allzu viel geschafft. Jedenfalls ist es egal, ob 2, 4 oder 8 MB RAM drin stecken.
Mit der K5504.50 (18 Sektoren) funktionierts, mit der NEC (17 Sektoren) nicht.

Mir fehlen da org. RAM zum Vergleich.

Ich hätte eigentlich gedacht, dass sich mehr RAM beim SYSGEN irgendwie auswirkt, aber die Platten klapperei und die Zeit scheint gleich zu bleiben.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
246
22.08.2009, 22:56 Uhr
Olli

Avatar von Olli

hm naja - is wohl alles andere als trivial wie ich gerade sehe... ist kreuz und quer im Kernel verbastelt. Man muesste mal schauen was passiert, wenn man sein filesystem so konfiguriert, das der swap 0 byte gross ist....
Aber eigentlich sollte er wohl eh nur swappen wenn kein Speicher mehr da ist.

ggf. sysgen mit timex ausfuehren. Also


Quellcode:
timex sysgen

Dort zeigt er am Ende an wieviel aus- und eingeswapt er hat... Bei ausreichend Speicher sollte es 0 sein denke ich mal.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 22.08.2009 um 22:56 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
247
23.08.2009, 11:48 Uhr
Enrico
Default Group and Edit


Ich hab das nun mit timex aufgerufen. Nun wirds aber richtig komisch.
Jetzt funktionierts auch mit der nicht funktionierenden Platte, allerdings scheint es so, also ob kein neues System gebastelt wird.

Bei 2 MB RAM:

Quellcode:
cd /usr/sys/conf
#2 timex sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
file system layout :
#define USR     13000
#define SWAP    3000
#define ROOT    7000
#define TMP     4000
#define Z       65016
#define MD5     0
#define MD6     0
#define MD7     0
#define MD8     0
#define MD9     0

#define MD10    0
#define MD11    0
#define MD12    0
#define MD13    0
#define MD14    0
#define MD15    0
#define MD16    0
#define MD17    0
#define MD18    0
#define MD19    0

Do you want to change file system layout ? : n
aktual version parameters :
#define SYSNAME         "P8000"
#define NODENAME        "WEGA"
#define VERSION         " 3.1 4/5"

Do you want to change version parameters ? :n
Do you want to add new driver to the system ? : n
New wega is building now ! Wait a minute !
        scc  -O -c wpar.c
        chkout  ver.c+
        Version 3.2
        4 lines
        scc  -c ver.c
        sld -Ns -o wega -e start -X -i -Ms62 wpar.o event.o mch.o u.o ver.o fpe.o conf.o ../sys/LIB1 ../dev/LIB2
        rm -f ver.o ver.c
New wega : /usr/sys/conf/wega

New boot is building now !
        ld -s -e start -b 0x8000 -o boot bstart.o BOOTLIB
New boot : /usr/sys/conf/boot

real     1:50.91
user       42.45
sys        26.75

cpu idle        32%
wait bio         6%
wait swap        0%
wait pio         0%
cpu user        38%
cpu sys         30%
swap in         0
swap out        0
chars read      587927
chars written   209204
block reads     2889
logical reads   7727
cached reads    63%
block writes    569
logical writes  2086
cached writes   73%
disk0 I/O       0
disk1 I/O       0
disk2 I/O       0
disk3 I/O       0
p switch        1141
preempt         70
syscall         5278
iget            788
namei           319
dirblk          561
#3

Bei 8 MB RAM:

Quellcode:
timex sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
file system layout :
#define USR     13000
#define SWAP    3000
#define ROOT    7000
#define TMP     4000
#define Z       65016
#define MD5     0
#define MD6     0
#define MD7     0
#define MD8     0
#define MD9     0

#define MD10    0
#define MD11    0
#define MD12    0
#define MD13    0
#define MD14    0
#define MD15    0
#define MD16    0
#define MD17    0
#define MD18    0
#define MD19    0

Do you want to change file system layout ? : n
aktual version parameters :
#define SYSNAME         "P8000"
#define NODENAME        "WEGA"
#define VERSION         " 3.1 4/5"

Do you want to change version parameters ? :n
Do you want to add new driver to the system ? : n
New wega is building now ! Wait a minute !
        scc  -O -c wpar.c
        chkout  ver.c+
        Version 3.2
        4 lines
        scc  -c ver.c
        sld -Ns -o wega -e start -X -i -Ms62 wpar.o event.o mch.o u.o ver.o fpe.o conf.o ../sys/LIB1 ../dev/LIB2
        rm -f ver.o ver.c
New wega : /usr/sys/conf/wega

New boot is building now !
        ld -s -e start -b 0x8000 -o boot bstart.o BOOTLIB
New boot : /usr/sys/conf/boot

real     1:51.55
user       42.71
sys        26.43

cpu idle        32%
wait bio         6%
wait swap        0%
wait pio         0%
cpu user        38%
cpu sys         30%
swap in         0
swap out        0
chars read      587927
chars written   209204
block reads     2897
logical reads   7734
cached reads    63%
block writes    574
logical writes  2098
cached writes   73%
disk0 I/O       0
disk1 I/O       0
disk2 I/O       0
disk3 I/O       0
p switch        1154
preempt         69
syscall         5283
iget            788
namei           319
dirblk          561
#4

und wieder bei 2 MB RAM, aber wenn es eigentlich nicht klappt:


Quellcode:
sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
Out of memory.
#5 timex sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
file system layout :
#define USR     13000
#define SWAP    3000
#define ROOT    7000
#define TMP     4000
#define Z       60176
#define MD5     0
#define MD6     0
#define MD7     0
#define MD8     0
#define MD9     0

#define MD10    0
#define MD11    0
#define MD12    0
#define MD13    0
#define MD14    0
#define MD15    0
#define MD16    0
#define MD17    0
#define MD18    0
#define MD19    0

Do you want to change file system layout ? : n
aktual version parameters :
#define SYSNAME         "P8000"
#define NODENAME        "WEGA"
#define VERSION         " 3.1 4/5"

Do you want to change version parameters ? :n
Do you want to add new driver to the system ? : n
New wega is building now ! Wait a minute !
`wega' is up to date.
New wega : /usr/sys/conf/wega

New boot is building now !
`boot' is up to date.
New boot : /usr/sys/conf/boot

real       24.88
user        6.15
sys         5.28

cpu idle        27%
wait bio         2%
wait swap        0%
wait pio         0%
cpu user        25%
cpu sys         48%
swap in         0
swap out        0
chars read      31677
chars written   860
block reads     311
logical reads   958
cached reads    68%
block writes    51
logical writes  132
cached writes   61%
disk0 I/O       0
disk1 I/O       0
disk2 I/O       0
disk3 I/O       0
p switch        164
preempt         16
syscall         1691
iget            257
namei           112
dirblk          179
#6


--
MFG
Enrico

Dieser Beitrag wurde am 23.08.2009 um 11:53 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
248
23.08.2009, 14:10 Uhr
Olli

Avatar von Olli

du solltest "wega" und "boot" nach dem compilieren aus dem Verzeichniss loeschen. Ansonsten kann es je nach Datum/Uhrzeiteinstellung dazu kommen, das make "denkt" 'hey, die Datei is ja schon da und neuer als meine Sourcen' - dann sagt er "is up to date" und compiliert nicht nochmal.

Aber - "swap in" und "swap out" is immer 0 - er swappt also schonmal nicht....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
249
23.08.2009, 14:56 Uhr
Enrico
Default Group and Edit


na gut, bleibt nur noch die Frage, warum es mit timex geht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
250
23.08.2009, 15:46 Uhr
Olli

Avatar von Olli

Ich glaube das sind alles irgendwelche Konstellation wo es halt bei dem einen geht und bei dem anderen nicht da bei dem einen vielleicht irgendwas ne Nanosekunde schneller laeuft als bei wem anders... rate ich mal so unwissend ins blaue... Das eine ist vielleicht mehr im Grenzbereich und bei dem anderen ist der Grenzbereich schon ueberschritten... timex macht die Ausfuehrung vielleicht z.B. langsammer um die Statistiken zu sammeln.... rate ich.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
251
23.08.2009, 18:40 Uhr
holm

Avatar von holm

Das ist so ungefähr der Gedankengang bei dem ich auch schon war. Ich habe keine
Idee woran es liegen könnte, sonst könnte man ja danach suchen...

Mein Board geht derzeit überhaupt nicht, ich weiß gar nicht mehr welcher der letzte Stand Bastelei mit dem Ding war...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
252
23.08.2009, 19:01 Uhr
Enrico
Default Group and Edit


Ich habe mal die Wait-Logik vom Z80 reingeschleift.
Takt-Diagramm her dachte ich dass es passt.
Tuts aber nicht.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
253
23.08.2009, 19:17 Uhr
holm

Avatar von holm

...was tut es denn nicht?

Gruß,
Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
254
23.08.2009, 19:20 Uhr
Enrico
Default Group and Edit


Das 8000er Board wird nicht mehr gefunden.
Geht weder mit /MREQ, noch mit /RAS, also das was aus dem FF mit MREQ AS am Eingang rauskommt.

Ich werd al den LA reinhängen
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
255
23.08.2009, 20:05 Uhr
Enrico
Default Group and Edit


Hat sich erledigt, geht.

Spuckt timex reproduzierbare Zeiten aus?

z.B. am Anfang real /user /sys?
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
256
23.08.2009, 22:07 Uhr
Olli

Avatar von Olli

ja - real ist die komplette Ausfuehrungszeit. Die anderen geben an wieviel Zeit davon userspace Prozesse gebraucht haben und wieviel der Kernel... im Grunde hierfuer uninteressant. real ist interessant.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 23.08.2009 um 22:07 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
257
30.08.2009, 00:07 Uhr
Enrico
Default Group and Edit


Irgendwie kommt man da einfach auf keinen grünen Zweig, je mehr ich ausprobiere, desto undurchsichtiger wird das irgendwie.

Mit org. 1 MB (4 x 256k) sagt Timex mit bei beiden Platten SWAP IN 12, SWAP OUT 10. Meine RAM Karte habe ich auf 1 MB abgerüstet, dort ist SWAP 8 / 7. Funktion bzw. eben nicht, wie gehabt.
Eigentlich sollte doch bei gleicher RAM Grösse gleich ausgelagert werden.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
258
30.08.2009, 08:38 Uhr
Olli

Avatar von Olli

Sind die Zahlen reproduzierbar?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
259
30.08.2009, 09:33 Uhr
holm

Avatar von holm

@Enrico:
nicht gezwungenermaßen gleich.
Im Durchschnitt ja, über viele Tests. Ausgelagert werden Prozessem die zur Zeit nicht benötigt werden, aber schon sowas wie z.B. cron, der Zeitdienst, spukt Dir bei wenigen
Tests in die Suppe. Dein Programm ist ja nicht das einzige Programm das läuft.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
260
30.08.2009, 11:04 Uhr
Enrico
Default Group and Edit


richtig. Ich musste es immer erst einige male durchlaufen lasen, bevor es gleich bleibt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
261
30.08.2009, 11:33 Uhr
Olli

Avatar von Olli

Ich habe gehofft mit adb (Ist auch ein Kapitel im WEGA Dienstprogramme Band C dazu) weiter zu kommen, aber wenn ich mit "source" arbeite um keine neue csh Shell bei der Ausfuehrung des Scripts /etc/sysgen zu starten, stuerzt er nicht ab..... und wenn ich nicht mit "source" arbeite, coredumped er.... Er coredumped uebrigens erst seit dem ich /etc/sysgendahingehend modifiziert habe das er mir a und b als Debug Info an 2 Stellen ausgibt. Danach habe ich versucht mit dem core-File zu werkeln aber ich weiss nich wie.... ich komm mit der adb manpage nich so wirklich klar... Das WEGA Dienstprogramme Buch ist besser, aber csh ist leider "gestript" von daher sind da keine Debugging Symbole mehr da... man weiss also nich so recht was da abgeht...

Fuer mich sieht es so aus, als ob er (ganz unten) eine Bit-Operation auf die Adresse in r14 machen wollte (6066) und dabei dann die Segmentation Violation auftrat....



Quellcode:
#16 adb /bin/csh
ADB: P8000 1.6
? :r
/bin/csh: running
#1 cd /usr/sys/conf  
#2 source /etc/sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
file system layout :
#define USR     13000
#define SWAP    3000
#define ROOT    7000
#define TMP     4000
#define Z       146376
#define MD5     0
#define MD6     0
#define MD7     0
#define MD8     0
#define MD9     0

#define MD10    0
#define MD11    0
#define MD12    0
#define MD13    0
#define MD14    0
#define MD15    0
#define MD16    0
#define MD17    0
#define MD18    0
#define MD19    0

Do you want to change file system layout ? : n
a
b
aktual version parameters :
#define SYSNAME         "P8000"
#define NODENAME        "WEGA"
#define VERSION         " 3.1 4/5"

Do you want to change version parameters ? :n
Do you want to add new driver to the system ? : n
New wega is building now ! Wait a minute !
        chkout  ver.c+
        Version 3.2
        4 lines
        scc  -c ver.c
        sld -Ns -o wega -e start -X -i -Ms62 wpar.o event.o mch.o u.o ver.o fpe.o conf.o ../sys/LIB1 ../dev/LIB2
        rm -f ver.o ver.c
New wega : /usr/sys/conf/wega

New boot is building now !
`boot' is up to date.
New boot : /usr/sys/conf/boot
#3 /etc/sysgen

---- sysgen ----

Version 1.2


Do you want to change system constants ? : n
file system layout :
#define USR     13000
#define SWAP    3000
#define ROOT    7000
#define TMP     4000
#define Z       146376
#define MD5     0
#define MD6     0
#define MD7     0
#define MD8     0
#define MD9     0

#define MD10    0
#define MD11    0
#define MD12    0
#define MD13    0
#define MD14    0
#define MD15    0
#define MD16    0
#define MD17    0
#define MD18    0
#define MD19    0

Do you want to change file system layout ? : n
a
/etc/sysgen: Segmentation violation -- Core dumped
#4 exit
#6 process      terminated
? $q
#17 adb /bin/csh core
ADB: P8000 1.6
? $w
? :w
bad modifier
? ?i
%010c:          bit     @r14,#0
? ?i
%010c:          bit     @r14,#0
?
%010e:          jr      z/eq,%0132
? #18 !!
adb /bin/csh core
ADB: P8000 1.6
? ?i
%010c:          bit     @r14,#0
? $q
#19 !!
adb /bin/csh core
ADB: P8000 1.6
? $C
Local variables not implemented
()
        stack frame:
                %fbfa: %0200 (return address)
()
        stack frame:
                %fbfc: %00f4 (return address)
()
        stack frame:
                %fbfe: %7761 (return address)
()
        stack frame:
                %fc00: %2718 (return address)
()
        stack frame:
                %fc02: %0002 (return address)
()
        stack frame:
                %fc04: %0065 (return address)
()
        stack frame:
                %fc06: %0001 (return address)
()
        stack frame:
                %fc08: %0200 (return address)
()
        stack frame:
                %fc0a: %652a (return address)
()
        stack frame:
                %fc0c: %0001 (return address)
()
        stack frame:
                %fc0e: %2542 (return address)
()
        stack frame:
                %fc10: %0002 (return address)
()
        stack frame:
                %fc12: %2c30 (return address)
()
        stack frame:
                %fc14: %6560 (return address)
()
        stack frame:
                %fc16: %0065 (return address)
()
        stack frame:
                %fc18: %0001 (return address)
()
        stack frame:
                %fc1a: %0002 (return address)
()
        stack frame:
                %fc1c: %62ca (return address)
()
        stack frame:
                %fc1e: %2506 (return address)
()
        stack frame:
                %fc20: %2542 (return address)
()
        stack frame:
                %fc22: %2542 (return address)
()
        stack frame:
                %fc24: %83e4 (return address)
()
        stack frame:
                %fc26: %0000 (return address)
()
        stack frame:
                %fc28: %0065 (return address)
()
        stack frame:
                %fc2a: %0001 (return address)
()
        stack frame:
                %fc2c: %0000 (return address)
()
        stack frame:
                %fc2e: %620e (return address)
()
        stack frame:
                %fc30: %0001 (return address)
()
        stack frame:
                %fc32: %000e (return address)
()
        stack frame:
                %fc34: %2542 (return address)
()
        stack frame:
                %fc36: %0000 (return address)
()
        stack frame:
                %fc38: %2f12 (return address)
()
        stack frame:
                %fc3a: %0066 (return address)
()
        stack frame:
                %fc3c: %fc5b (return address)
()
        stack frame:
text address not found
? $r
r0      %0010           r1      %24fe           r2      %6066
r3      %0200           r4      %0000           r5      %2c36
r6      %0001           r7      %0200           r8      %0000
r9      %0000           r10     %0000           r11     %2c30
r12     %0101           r13     %2cc0           r14     %6066
sp      %fbfa           fcw     %1802           pc      %010c
%010c:          bit     @r14,#0
? $e
? $m
? map       `/bin/csh'
              b1 = %0          e1 = %9700       f1 = %28
              b2 = %0          e2 = %1b78       f2 = %9728
/ map       `core'
              b1 = %0          e1 = %2f00       f1 = %a00
              b2 = %ea00       e2 = %10000      f2 = %3900
?


--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 30.08.2009 um 11:43 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
262
30.08.2009, 12:12 Uhr
Tom Nachdenk



Ja, unter der Prämisse das auch sonst alles 'Zyklentreu' abläuft. In der Praxis ist dann mal die Festplatte etwas schneller und eine Speicherrequest erfolgt schon wenn ein anderer Prozess seinen Speicher noch nicht wieder freigegben hat oder es wird einmal cron (mehr) aufgerufen ... so ein gewisses Rauschen der Werte wirst Du bei Unix immer haben.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
263
30.08.2009, 12:30 Uhr
holm

Avatar von holm

Noch mal zum Fehler:

Ich glaube nicht Olli, das man da wirklich was mit dem Debugger finden kann, ich halte das für ein moving Target.

Irgendwas läuft mit Enricos Platine prinzipiell falsch, ich weiß aber nicht genug über die ganze Adressierung der RAMS durch die MMUs hindurch. Meine Vermutung ist, das es einen Typ zeitkritischer Speicherzyklen gibt, bei dem aus dem RAM Mist kommt, oder Mist gelesen wird, währen 99% aller Zugriffe ok sind, so ähnlich wieder der M1 Zyklus beim Z80 und da paßt dann das Timing der eigentlich genügend schnellen Speicher nicht. Oder aber es wird ein Zyklus begonnen und abgebrochen durch einen Neuen, irgend sowas in der Art. Mit dem Debugger kommst Du da nicht weiter.
Traurig ist, das wir uns nirgendwo anders als beim P8000 RAM was abgucken können, der ECC RAM der S8000 funktioniert völlig anders und der Multibius RAM von dem Ding was Du da ausgekramt hast auch. (Wer hatte sich mal gewundert das EAW für den Multibus passende Z8000 CPU Platinen gebaut hat?).

IMHO müßte man sich wirklich die Timings von sämtlichen Sonderzuständen der CPU angucken (Traps, Syscalls, MMU Programmierung) und nach prinzipiellen Problemen forschen. Anderenfalls braucht man wohl einen sehr guten LA mit gigantischer Speichertiefe, selbst dann ist es kompliziert Rückschlüsse von dem was man sieht auf das aktuelle Geschehen zu ziehen.
Mit dem Hardwarepatch im GAL halte ich Enricos Platine zum gegenwärtigen Erkenntnisstand für fehlerfrei, das Problem ist hier der Erkenntnisstand.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
264
30.08.2009, 12:46 Uhr
Enrico
Default Group and Edit


Gut erklärt. So langsam gehen mir da die Ideen aus, an welchem Punkt man da noch ansetzen könnte.
Wenn ich das heute noch schaffe, bau ich da noch die Wait-Schaltung ein, um die Zugriffe zu verlängern, und höng den Lgoikanalyser dran.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
265
30.08.2009, 13:04 Uhr
Tom Nachdenk



Das war P.S., hier gibts noch ein zweites Multibus Z8000 System:

http://www.bitsavers.org/pdf/centralData/centralData_multibusZ8000.pdf

Ist so ein MMS16 Board mit U8001 eigentlich schon mal aufgetaucht?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
266
30.08.2009, 13:36 Uhr
Enrico
Default Group and Edit


auf diese Swapperei kann man sich nicht so wirklich ganz verlassen. jetzt ist es indentisch mit den org RAMs.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
267
30.08.2009, 13:40 Uhr
holm

Avatar von holm

Ein Unix (ohne spezielle Erweiterungen) ist kein Echtzeitsystem, Reaktionszeiten sind nicht vorhersehbar.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
268
11.09.2009, 19:18 Uhr
Enrico
Default Group and Edit


Die Wait-Schaltung vom Z80 ist nun endlich drin, allerdings mit invertiertem Takt. So richtig funktioniert das noch nicht, da nur beim lesen aber nicht beim schreiben der Zugriff verlängert wird.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
269
23.09.2009, 18:46 Uhr
Enrico
Default Group and Edit


Nicht, dass da noch jemand auf die Idee kommt, ich hätte schon aufgegeben. Das Ganze sieht immer mehr nach einer langwierigen Forschungsarbeit aus.

Zuerst hatte ich nochmal das Refresh umgebaut, nur um sicher zu gehen.
A1A8 kommt von einem '030 NAND. Damit ist sichergestellt, dass der Refresh-Zähler wirklich nur weiter zählt, wenn die CPU mit einem Zyklus durch ist. Der Refresh funktioniert damit auch einwandfrei, hat ansonsten aber nix gebracht.



Dabei ist mir aufgefallen, dass das Timing prima zu einem CAS-before-RAS-Refresh passt.



Das tuts dann auch einwandfrei, Schaltungsänderungen wg. dem Refresh-Problem sind damit nicht mehr nötig.

Bleibt noch nach wie vor das Problem mit SYSGEN.

RAM lesen:



RAM schreiben:



Das hier ist merkwürdig:



Speicherzugriff ohne /DS macht nicht wirklich viel Sinn.
Mal gucken...
--
MFG
Enrico

Dieser Beitrag wurde am 23.09.2009 um 18:52 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
270
23.09.2009, 19:55 Uhr
Enrico
Default Group and Edit


So, noch schnell ne neue Erkenntnis.
Die RAMs laufen im Early-write. Dort übenehmen die RAMs beim Schreibzugriff die Daten mit der H-L Flanke vom CAS.
Die CPU legt die Daten auf den Bus, dann wird DS L, damit sind die Daten gültig. Zeit minimal 50 ns.
CAS wird aber vor DS aktiv. Kann schon sein, dass es da manchmal zu Problemen kommt. Hoffentlich ist es das.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
271
24.09.2009, 10:02 Uhr
Olli

Avatar von Olli

Ich hoffe mit!
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
272
24.09.2009, 19:43 Uhr
holm

Avatar von holm

Hmm, sowas wie den "merkwürdigen" Zugriff hatte ich geahnt. Irgendwas bei dem wir nicht wissen was da läuft. Es siht nicht so aus, als ob die Maschine hier wirklich vom RAM lesen wollen würde obwohl MREQ aktiv ist. Evtl. sind das irgendwelche MMU Sachen. Kannst Du mal die CPU Statussignale direkt mit fotografieren?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 24.09.2009 um 19:44 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
273
24.09.2009, 20:28 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Hmm, sowas wie den "merkwürdigen" Zugriff hatte ich geahnt. Irgendwas bei dem wir nicht wissen was da läuft. Es siht nicht so aus, als ob die Maschine hier wirklich vom RAM lesen wollen würde obwohl MREQ aktiv ist. Evtl. sind das irgendwelche MMU Sachen. Kannst Du mal die CPU Statussignale direkt mit fotografieren?

Gruß,

Holm

Da komme ich so nicht ran. Da müsste ich erst den Rechner total zerlegen.
Lt. CPU Doku soll es sowas gar nicht geben. Bei interner Arbeit kommt nur /AS, bei MMU Sachen, ist es ja ein Spezial-I/O, alos würde da weder /MREQ, oder /IORQ kommen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
274
24.09.2009, 20:34 Uhr
Enrico
Default Group and Edit


So, anscheinend wars das aber. SYSGEN funktioniert nun auch ohne TIMEX.

Lesen:



Schreiben:



Refresh:



merkwürdiger Zugriff:



Da mich das auch stört, dass da immer der Bustreiber für die RAMs durchgeschaltet hat, habe ich das so gelöst, dass er nur noch den Bus durchschaltet, wenn /DS oder /WE kommt (s.o.). Komisch ist auch, dass er länger als ein normaler Speicherzugriff ist.

Nun muss ich noch den Prototyp wieder zurück ändern, dass alle RAM Typen gehen (den hatte ich ja auf 1 MB beschränkt), und dann das auf die fertige Karte anpassen.
--
MFG
Enrico

Dieser Beitrag wurde am 24.09.2009 um 20:36 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
275
24.09.2009, 22:09 Uhr
Enrico
Default Group and Edit


Am besten liesse sich dieser merkwürdige Zugriff dadurch erklären, dass da gerade vom EPROM gelesen wird und dafür /DS zum Bus hin unterdrückt und /WAIT erzeugt wird. Der Plan hat der P8000 hat es wirklich in sich. Die haben das so einiges rumgeschaltet. Jedenfalls finde ich da nicht mal das richtige /DS, was auf die Steckplätze geht. Irgendwas haben die da jedenfalls reingeschaltet, z.B. SYSDS.
--
MFG
Enrico

Dieser Beitrag wurde am 24.09.2009 um 22:10 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
276
24.09.2009, 22:10 Uhr
holm

Avatar von holm

Möglicherweise liegt die Existenz dieses komischen Zugriffs an einem Dekodierfehler
der P8000 Logik, scheinbar hat aber EAW davon gewußt :-)
Das war auch der Grund, warum ich nach den CPU Statussignalen fragte, die hätten dann vielleicht aufgedeckt um was es sich wirklich handeln soll. Das Du nicht an die Signale ran kommst, ist verständlich. In sofern ist die P8000 Mechanik suboptimal..

Was hast Du denn nun im Endeffekt geändert?

Gruß,
Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}

Dieser Beitrag wurde am 24.09.2009 um 22:10 Uhr von holm editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
277
24.09.2009, 22:12 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Das Du nicht an die Signale ran kommst, ist verständlich. In sofern ist die P8000 Mechanik suboptimal..

mach ich dann noch mal.


Zitat:
Was hast Du denn nun im Endeffekt geändert?

Wie ich oben schrieb. /CAS wird beim schreiben erst mit /DS aktiv.
und nur da.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
278
25.09.2009, 06:32 Uhr
Olli

Avatar von Olli

Also nur ein neuer GAL? DS liegt ja am GAL und der GAL erzeugt CAS... Holm.... kannst du mal testen und wenn geht dann mir meinen bei dir noch liegenden 2. GAL brutzeln und mir schicken?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
279
25.09.2009, 09:38 Uhr
Enrico
Default Group and Edit


Da hats aber einer eilig
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
280
25.09.2009, 10:22 Uhr
holm

Avatar von holm

Ich würde auch sagen, warten wir mal ab was Enrico so ausbrütet :-)
Ich habe momentan keine Zeit mich damit zu beschäftigen.

Selbverständlich brenne ich Dir dann den 2. Gal.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
281
25.09.2009, 11:25 Uhr
Olli

Avatar von Olli

Naja - meine RAM Platinen liegen halt inzw. im Keller und es steckt nur die Enrico-Platine - aber passt schon... kann noch was warten
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
282
25.09.2009, 23:30 Uhr
Enrico
Default Group and Edit


So, fertig. Mal horchen was Holm dazu sagt. Bei mir klappt das nun jedenfalls so. Die Schaltung brauch man nun gar nicht mehr ändern, kann alles so bleiben. Jetzt sind sogar 2 Pins beim GAL frei.
Den Zähler U12 könnte man nun auch weglassen, dann sind dessen Pins 3, 2, 6 auf Masse zu schalten.
C1, C2 habe ich auf 22 pF, R14, R16 auf 470 Ohm geändert.


Quellcode:
title    P8000 RAM 16 MB
pattern  GATES
revision A
author   Gr„mer / Tiffe
date     25.09.2009

chip GATES GAL22V10

;pin 1       2       3     4    5    6     7     8     9     10   11      12
     JP_BAE  JP_SIT  A0    A21  A22  A23   RFSH  DS    BW    RW   RASEN   GND
;pin 13      14      15    16   17   18    19    20    21    22   23      24
     NC      MOE     CAS1  CAS0 WE   CAS3  CAS2  RFZ   VZO   7FH  VZI     VCC


@UES U6

        @define 2MB     "/JP_SIT*/A21*/A22*/A23"
        @define 4MB     "JP_BAE*/JP_SIT*A21*/A22*/A23"
        @define 8MB     "JP_SIT*/A23*7FH"
        @define 16MB    "JP_BAE*JP_SIT*A23"

        @define CASWWR  "/VZI*/BW*/RW*/DS"
        @define CASWRD  "/VZI*/BW*RW"
        @define CASBLWR "/VZI*BW*A0*/RW*/DS"
        @define CASBLRD "/VZI*BW*A0*RW"
        @define CASBHWR "/VZI*BW*/A0*/RW*/DS"
        @define CASBHRD "/VZI*BW*/A0*RW"


equations

        CAS0    = /RFSH + 2MB*CASWWR + 2MB*CASBLWR
                       + 8MB*CASWWR   + 8MB*CASBLWR
                       + 2MB*CASWRD + 2MB*CASBLRD
                       + 8MB*CASWRD + 8MB*CASBLRD
        CAS1    = /RFSH + 4MB*CASWWR + 4MB*CASBLWR
                       + 16MB*CASWWR + 16MB*CASBLWR
                       + 4MB*CASWRD + 4MB*CASBLRD
                       + 16MB*CASWRD + 16MB*CASBLRD
        CAS2    = /RFSH + 2MB*CASWWR + 2MB*CASBHWR
                       + 8MB*CASWWR + 8MB*CASBHWR
                       + 2MB*CASWRD + 2MB*CASBHRD
                       + 8MB*CASWRD + 8MB*CASBHRD
        CAS3    = /RFSH + 4MB*CASWWR + 4MB*CASBHWR
                      + 16MB*CASWWR + 16MB*CASBHWR
                      + 4MB*CASWRD + 4MB*CASBHRD
                      + 16MB*CASWRD + 16MB*CASBHRD

        /MOE    = /VZO*/DS + WE
        WE      = /VZO*/RW
        /VZO    = 2MB*RASEN*RFSH + 4MB*RASEN*RFSH  
                       + 8MB*RASEN*RFSH + 16MB*RASEN*RFSH
        RFZ     = GND

; end of GATES




--
MFG
Enrico

Dieser Beitrag wurde am 25.09.2009 um 23:34 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
283
26.09.2009, 15:15 Uhr
Enrico
Default Group and Edit


Wie vermutet:





Zwangsläufig musste ich mir ja die Doku zu CPU und MMU genauer durchlesen. Das Teil ist ja um Längen besser als dieses 8086 Zeug.
Aber wie üblich setzt sich ja der grössere Schrott durch, weils billiger ist.
Der 8086 hat ja nur 16 Bit Register, kann nur 1 MB. Beim Z8000er gehen die Register bis 64 Bit, Speicher ohne MMU bis 6 x 8 MB, mit MMUs bis 6 x 16 MB.
Für damals mächtig gewaltig.
--
MFG
Enrico

Dieser Beitrag wurde am 26.09.2009 um 15:25 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
284
01.10.2009, 17:57 Uhr
Olli

Avatar von Olli

Schon zu gekommen holm? *bohr*
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
285
01.10.2009, 18:04 Uhr
Enrico
Default Group and Edit


Wenn Holm gar keine Zeit, würde ich mal sagen, ich schick Dir nen GAL.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
286
02.10.2009, 06:59 Uhr
Georg

Avatar von Georg

@Enrico
Kannst du mir auch 2 neue GAL brennen?
Gruß
Georg
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
287
02.10.2009, 08:23 Uhr
Olli

Avatar von Olli

Den Zähler U12 könnte man nun auch weglassen, dann sind dessen Pins 3, 2, 6 auf Masse zu schalten.
C1, C2 habe ich auf 22 pF, R14, R16 auf 470 Ohm geändert.


Muessen diese Aenderungen eigentlich noch durchgefuehrt werden oder kann ich alles so lassen wie urspruenglich geplant + Den Aenderungen am 74er von holm...?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
288
02.10.2009, 11:46 Uhr
holm

Avatar von holm

@Olli: Du Säge!

:-)


Ich werde Dir das Ding über das WE brennen und Dir das Ding schicken.

@Enrico: Ich habe den Kopf vom Bandgerät mittlerweile mehr oder weniger einzeln da liegen, geht nächste Woche an Dich raus.
Nochmal zum RAM Board: Du hast also jetzt die richtige Originalschaltung, so wie das Layout mal ursprünglich war?

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
289
02.10.2009, 13:40 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
@Enrico: Ich habe den Kopf vom Bandgerät mittlerweile mehr oder weniger einzeln da liegen, geht nächste Woche an Dich raus.

Prima. Du musst den aber nicht gleich schicken, das hat auch Zeit. Mit was anderes zusammen, oder auch zum Treffen.
Mir ging es nur daruml dass der nicht im Schrott landet.



Zitat:
Nochmal zum RAM Board: Du hast also jetzt die richtige Originalschaltung, so wie das Layout mal ursprünglich war?

Nein, weil ich faul bin, habe ich den Draht-Patch so gelassen. Das ist nämlich egal. Der '193 Zähler mit der ganzen Mimik, wird ja nun gar nicht mehr benötigt.
--
MFG
Enrico

Dieser Beitrag wurde am 02.10.2009 um 13:47 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
290
02.10.2009, 13:45 Uhr
Enrico
Default Group and Edit


@Olli, "kann" heisst, Du musst nicht. Wenn Du den aber weglässt, dann so.
Die Eingänge vom nachfolgenden Multiplexer sollen ja nicht offen sein.
Du kannst es also auch genau so lassen, wie es jetzt ist.

Die anderen Werte für C und R bringen bessere Signale. Ob sich das auch auswirkt, weis ich nicht.

@Georg, kommt dann noch. ICh wollte das erst von 2 Experten prüfen lassen.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
291
02.10.2009, 14:03 Uhr
Olli

Avatar von Olli

Gut, dann lasse ich es auf meinem aktuellen Board "verdrahtet" - Ich habe ja noch ein zweites Board - das baue ich mir vielleicht auch noch auf - da kann ich das ja dann ohne don Drahtverhau (also mit Originalaufbau) und mit anderen Rs/Cs machen....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
292
10.10.2009, 08:54 Uhr
Olli

Avatar von Olli

Kann mir einer n GAL mit dem aktuellen Inhalt schicken? Holm? Enrico?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
293
10.10.2009, 09:15 Uhr
Enrico
Default Group and Edit


Wenn Du mir ne Adresse gibst.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
294
10.10.2009, 09:24 Uhr
Olli

Avatar von Olli

bitteschoen: http://pofo.de/impressum.shtml
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
295
13.10.2009, 15:13 Uhr
rm2
Default Group and Edit
Avatar von rm2

Hallo in die Runde,

gerade durch Zufall diese Seite entdeckt.
Es gibt wirklich noch P8000 Anwender.
Muß ich meinen P8000C jetzt entmotten?

mfg ralph

ps: P8000 von 1988 bis 1995 in betrieblicher Nutzung,
danach privat und 1995 eingemottet
--
.
http://www.ycdt.net/mc80.3x . http://www.ycdtot.com/p8000
http://www.k1520.com/robotron http://www.audatec.net/audatec
http://www.ycdt.de/kkw-stendal
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
296
13.10.2009, 16:27 Uhr
Rüdiger
Administrator



Zitat:
rm2 schrieb
Muß ich meinen P8000C jetzt entmotten?

Muss nicht. Aber es wäre doch ein guter Anlass.

Es gibt nicht nur P8000-Anwender, sondern sogar Entwickler.
Klick mal auf Robotrontechnik.de -> Service -> Eigenbauprojekte -> P8000-RAM.
--
Kernel panic: Out of swap space.

Dieser Beitrag wurde am 13.10.2009 um 19:54 Uhr von Rüdiger editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
297
13.10.2009, 17:08 Uhr
Mobby5




Zitat:
rm2 schrieb
Hallo in die Runde,

gerade durch Zufall diese Seite entdeckt.

mfg ralph


Welche ist "diese"?
--
und ausserdem muss in Zeile 20 der Doppelpunkt durch ein Semikolon ersetzt werden
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
298
13.10.2009, 18:22 Uhr
Olli

Avatar von Olli

Kernel bauen geht jetzt mit dem neuen GAL. Habe aber nach wie vor holms Drahtverhau auf dem Board. Muesste ich dann also eigentlich mal mit dem 2. Board ohne Drahtverhau testen.... muesste ich dann nur mal aufbauen hehe
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
299
13.10.2009, 18:29 Uhr
Enrico
Default Group and Edit


Du meinst das mit SYSGEN ?

Sollte auch mit original funktionieren. Probiers bitte mal aus.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
300
13.10.2009, 18:42 Uhr
Olli

Avatar von Olli

Jo - SYSGEN. Ohne Drahtverhau kann ich leider nicht ausprobieren, da ich zum Aufbau der 2. Platine nicht genuegend Bauteile habe.... muesste ich noch mit in meine naechste Reichelt Bestellung aufnehmen. Dann wohl gleich mit angepasstem C1,C2 und den beiden Widerstaenden....

U12 brauche ich dann gar nicht mehr zu verbauen? Dann schalte ich die Eingaenge mit Faedeldraht auf Masse und bestuecke den gar nich erst
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 13.10.2009 um 19:04 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
301
13.10.2009, 19:36 Uhr
Enrico
Default Group and Edit


Die brauchst Du doch nur auf die andere Platine zu stecken.

Siehe unter 282.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
302
13.10.2009, 19:59 Uhr
Olli

Avatar von Olli

282 habe ich doch gelesen - dort steht doch, U12 kann ich auch weglassen... Wiso also ICs verbauen wenn nicht noetig?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
303
13.10.2009, 20:01 Uhr
Enrico
Default Group and Edit


Na, wenn Du extra nochmal nachfragst ....
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
304
13.10.2009, 20:02 Uhr
Olli

Avatar von Olli

hatte mich auch etwas doof ausgedrueckt. Ich meinte ich lasse U12 einfach komplett unbestueckt - wenn ich keinen IC draufhaue is da ja auch nix was ich von dem IC auf Masse schalten koennte
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 13.10.2009 um 20:05 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
305
13.10.2009, 20:54 Uhr
Enrico
Default Group and Edit


Doch, die Ausgangs-Pins von dem IC. siehe oben, bzw. Plan
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
306
13.10.2009, 21:08 Uhr
Olli

Avatar von Olli

ok - also die benutzten Ausgaenge von U12 auf Masse - ich kann nicht richtig lesen - sorry
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 13.10.2009 um 21:08 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
307
14.10.2009, 13:32 Uhr
rm2
Default Group and Edit
Avatar von rm2

Hallo paulotto,

betrifft Eintrag 125.
In meinem P8000C sind 3 FD's und 2 HD's eingebaut
(von HD2 ist nur LED sichtbar)

mfg ralph

PS
es gab mal einen P8000 in Elektronik Gera
mit 4 FD's und 2HD's
--
.
http://www.ycdt.net/mc80.3x . http://www.ycdtot.com/p8000
http://www.k1520.com/robotron http://www.audatec.net/audatec
http://www.ycdt.de/kkw-stendal
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
308
14.10.2009, 19:21 Uhr
paulotto



ist aber nicht standardmäßig. Das dürfte doch nur über mechanische Friemelei gehen...

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
309
24.10.2009, 14:35 Uhr
Olli

Avatar von Olli

So - habe nun mein 2. Board aufgebaut - ohne U12 (Pin 2,3,6 auf Masse) und mit den 22pF Kondensatoren und den 2 470 Ohm Widerstaenden. Funktioniert problemlos.

Gibts eigendlich ne einfache Moeglichkeit das andere Board fuer 5-8MB umzustellen? Habe ja 2 Boards aber nur 1MB SIMM.....
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
310
24.10.2009, 20:12 Uhr
Enrico
Default Group and Edit


Wenn Du 2x 4 MB SIMMs hast dann geht das ja.
Ach so, Du meinst 2 Boards in einem Rechner rein?

Sollte auch gehen, die Adressen leigen ja schon am GAL. Hab mir da aber keine Gedanken drüber gemacht. Wieso auch?

==============================

So, also denne, wer den GAL programmiert haben möchte, schickt mir den bitte in so einer kleinen Polstertüte antistatisch verpackt zu.
Ausserdem geht das auch noch Rüdiger für die HP.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
311
24.10.2009, 21:27 Uhr
Rainer



kannst du mir das GAL-File per Mail schicken? Das sollte mein Galep können...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
312
24.10.2009, 22:14 Uhr
Olli

Avatar von Olli

@Enrico - Problem ist halt, das ich keine 4MB oder 2MB SIMMs habe - ich habe nur 1MB SIMMs
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
313
25.10.2009, 11:11 Uhr
Enrico
Default Group and Edit


2 MB SIMMs gibts ja auch nicht. 4 MBs habe ich auch nur ein Paar, gibts aber auch bei Ebay.
Für den Fall noch nen extra GAL zu machen wird vorläufig nichts. Den müsste ich ja auch ausprobieren. Ich gehe aber aber davon aus, dass es möglich ist.
--
MFG
Enrico

Dieser Beitrag wurde am 25.10.2009 um 11:11 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
314
07.11.2009, 07:17 Uhr
Georg

Avatar von Georg

@Enrico
Besten dank die GAL sind und nach ca. 2h Betrieb der P8000
noch kein Speicherfehler.
Was bekommst du fürs Brennen und was sollte das mit der Briefmarke?

Danke und Gruß
Georg
--
DL5GSM ex DO5GSM DOK:X01 LOC:jo51pm
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
315
07.11.2009, 12:35 Uhr
Enrico
Default Group and Edit


Bitte; nix, wg. Porto
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
316
07.08.2010, 18:35 Uhr
holm

Avatar von holm

Nörgel:

Als einer der Letzten habe ich nun auch die neue GAL Version auf der Platine und die Hardwareänderungen rückgebaut. Danach hat mich noch ein nicht richtig angelöteter R15 genervt, irgendwann ging es dann. Ursache des plötzlichen Hervorkramens ist, das ich das GAL für Holger brennen wollte und meins natürlich gleich mit. Danach habe ich gleich noch eine defekte 256K Karte von Tom repariert.

Ich habe jetzt 2 Compact, eine davon mit EZU, demzufolge isnd da noch 4 Steckplätze für 4 1M Karten die ich habe frei, dann ist die Kiste voll. Ich habe aber noch eine 5. 1M Karte, die ich nun zusammen mit Enricos Karte in diesen Rechner stecken wollte, das funktioniert aber nicht. Nach dem RAM Test hängt sich der Monitor mit einer 9 weg. Das Selbe mit 5 1M Karten funktioniert:

P8000 Hardwaretest U8001 - Version 3.1
MAXSEG=<4F>
*

Hast Du das mal getestet mit einer zusätzlichen originalen Karte Enrico?

PS: ist nicht wirklich dringend, aber ich dachte eine Ram Karte ist im Rechner besser aufgehoben als im Schrank...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
317
07.08.2010, 18:49 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Nörgel:

Hast Du das mal getestet mit einer zusätzlichen originalen Karte Enrico?

PS: ist nicht wirklich dringend, aber ich dachte eine Ram Karte ist im Rechner besser aufgehoben als im Schrank...

Gruß,

Holm

Nein, habe ich nicht.
Ich bin ja davon ausgegangen, dass man dann nur diese eine Karte steckt, da sie den ganzen Bedarf abdeckt.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
318
07.08.2010, 19:15 Uhr
holm

Avatar von holm

Meine Gründe habe ich oben beschrieben :-)

Ok, ich habe was ausgelassen, ich habe ja noch dieses 16Bit Schmohrboard herumliegen das ja auch wieder funzt. Ich habe die Karte wieder auf 0-1M adressiert, damit auch dieses Board (zwecks entwicklung SCSI, falls da das mal wietergehen sollte, aber der Winter kommt ja noch)
RAM hat.

Entkrampfe ich erst mal und guck evtl. mal nach wenn Du gar Nichts mehr zu tun hast...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
319
07.08.2010, 19:59 Uhr
Enrico
Default Group and Edit



Zitat:
holm schrieb
Ok, ich habe was ausgelassen, ich habe ja noch dieses 16Bit Schmohrboard herumliegen das ja auch wieder funzt. Ich habe die Karte wieder auf 0-1M adressiert, damit auch dieses Board (zwecks entwicklung SCSI, falls da das mal wietergehen sollte, aber der Winter kommt ja noch)
RAM hat.

Ja, da war noch was mit SCSI.



Zitat:
Entkrampfe ich erst mal und guck evtl. mal nach wenn Du gar Nichts mehr zu tun hast...

Au ha, nichts zu tun kann verdammt lange dauern.
Es gibt noch jede Menge zu tun, und noch mehr Ideen was man bauen
könnte/müsste.
--
MFG
Enrico

Dieser Beitrag wurde am 07.08.2010 um 20:01 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
320
07.08.2010, 20:47 Uhr
holm

Avatar von holm

...geht den Menschen wie den Leuten.

Ich wollte ja nur anmerken, das da noch Was ist.
Wer weiß, evtl. jabe ich ja auch mal viel Zeit und dechiffriere was da jetzt momentan im GAL steht.
Ich nehme an, das die Treiber immer aktiv sind, wenn ein RAMzugriff auf dem Bus passiert oder sowas, wenn der fragliche Adreßbereich aktiv ist, und für das Board ist da ja Alles.
Mal sehen..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
321
07.08.2010, 23:35 Uhr
Enrico
Default Group and Edit


Hab nochmal über den GAL ein Auge geschmissen; da fällt mir erstmal nichts auf.
Es sollte eigentlich funktionieren.
Die Datentreiber schalten nur bei der entsprechenden Adresse, abhängig von den Jumpern, durch.
Hört sich mal wieder nach einen Logikanalyser-Einsatz an.

Die Karte hast Du doch mit 4 x 1MB bestückt?


Was meinst Du eigentlich mit "EZU"?
--
MFG
Enrico

Dieser Beitrag wurde am 07.08.2010 um 23:36 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
322
08.08.2010, 08:21 Uhr
holm

Avatar von holm

Ja, 4xTopless 1M, oder 4xSeimens 1M mit 9Chips. Kein Unterschied.

Wenn Dir EZU nicht gefällt, dann evtl. RTC? :-)

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
323
08.08.2010, 11:54 Uhr
Enrico
Default Group and Edit


Ja, RTC verstehe ich schon eher.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
324
08.08.2010, 13:09 Uhr
holm

Avatar von holm

Ist aber Beides das Selbe. EchtZeitUhr oder RealTimeClock.
Warum muß ich englisch schwafeln wenn es auch deutsch geht? Ich bin doch kein Manager...

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
325
08.08.2010, 14:10 Uhr
Enrico
Default Group and Edit


Ja, das stimmt schon, aber wenn ich einfach nicht drauf komme was es heissen soll.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
326
08.08.2010, 15:22 Uhr
holm

Avatar von holm

... schlimm das :-)
Meine Weibe arbeitet in der Krankenpflege. Letztens kam sie mal mit der Geschichte,
das einer der Patienten Sie bat vom Einkaufen so eine Onke Creme mitzubringen..

---Hähhh? Onke Creme? Nach einer Weile dämmerte es ihr, der Patient meinte "Lamisil Once".
Irgend so ein Kram um diesen "Fußpilz (kleine Risse) zu bekämpfen. Diese Generation stehe da furchtbar im Regen, diese ständigen Anglizismen sind denen eigentlich nur unverständlich.

Hast Du schon mal Bullshit Bingo gespielt? Ich ja, Bei einem Messeworkshop.
Der ärmste Redner kannte das nicht, ich habe bei seinen Synergieeffekten mit Shareholder Value nicht länger als 2 Minuten gebraucht bis ich lauthals Bullshit brüllen konnte. Ich hatte die Lacher auf meiner Seite denn im Unterschied zum Dozenten kannten die Anderen das..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
327
08.08.2010, 15:56 Uhr
Enrico
Default Group and Edit




Ja, ich kenne das so ähnlich. Bei Versammlungen ist das ziemlich nervig, wenn die von weiter oben mit ihrem Denglisch ankommen.
Hauptsache ist ja, dass keiner weis, was der andere meint.

Die Werbung wird ja auch immer schlimmer, Kaffee zum Gehen, Schreizentralen ...
Heutzutage heisst es ja auch Fassilitimanager.

PS: ganz schlimm ist sowas ja auch in Programmiererkreisen
--
MFG
Enrico

Dieser Beitrag wurde am 08.08.2010 um 15:59 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
328
08.08.2010, 19:17 Uhr
ambrosius



paßt zwar nur bedingt hierher, aber immerhin zum Hauptthema:

kann man irgendwie softwaremäßig oder aus einer Konfigurationsdatei von wega feststellen, ob die jeweilige serielle Schnittstelle eine RS232- oder IFSS-Schnittstelle ist? Oder geht das nur hardwaremäßig durch anschauen der Bewicklung der Stifte? Ich konnte in der mir zur Verfügung stehenden Doku dazu leider nichts finden.

Beste Grüße
Holger
--
viele Grüße
Holger
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
329
08.08.2010, 20:38 Uhr
holm

Avatar von holm

Das geht nur durch Gucken auf das Mainboard. Schlimmer noch, wenn eine der Schnitten auf "Modembetrieb" (Synchron) umgewickelt ist, bekommst du einen Fehler, weil der Schnittstellenloopbacktest feh schlägt, kein Taktsignal...

Dein Gal ist bereits im Briefkasten, die Antworten bekommst Du aber per Mail..


@Enrico: Fassilitimänetscher wenn schon, oder aber Facilitymanager :-)

Echtzeituht aka EZU war aber früher zumindest mal üblich.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
330
08.08.2010, 22:28 Uhr
ambrosius



@holm

Besten Dank schon einmal, auch für die Schnittstelleninfo...schade, das man die Konfiguration nicht auslesen kann

Beste Grüße
Holger
--
viele Grüße
Holger
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
331
23.12.2011, 10:08 Uhr
Micha

Avatar von Micha

ich hab akut das Problem, dass von den 4 originalen RAM Karten meiner Compact drei Stück nicht mehr ihren Dienst tun. Mit 256K läuft WEGA zwar, aber eben seeeeeeehr laaaaaangsaaam, also noch extremst sehr viel langsamer als sowieso schon

Schön, dass es hier dieses Projekt von Enrico gibt. Ich geh mal davon aus, dass man kein fertig bestücktes Exemplar kaufen kann? Falls es noch unbestückte LP gibt glaubich ehrlich gesagt auch nicht, dass das meinen derzeitigen Fertigkeiten gerecht wird (muss erst mal noch bissl an weniger kritischen Objekten üben...)

Ideal wär für mich, wenn es eine fertige Projektdatei zum In-Auftrag-geben bei PCB-Pool o.ä. Produzenten gäbe. Gibts sowas? Sonst setz ich mich eben mal zwischen den Feiertagen und Neujahr hin und versuch sowas mit Target, PCB-Pool Edition zusammenzubekommen.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
332
23.12.2011, 10:24 Uhr
holm

Avatar von holm

Versuche erst mal die defekten RAM Boards zu reparisieren.
Woher weißt Du das 3 Stück kaputt sind? Wenn DU eine Lücke im Speicherbereich hast, endet dort auch der Speichertest. d.h. es muß nur die 2. defekt sein und der Rechner findet bei bestückten 4 nur eine.

Du solltest erst einmal herausfinden welche wohin gewickelt ist.

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
333
23.12.2011, 10:44 Uhr
Micha

Avatar von Micha

das ist ein sehr sehr guter Punkt (mit dem "gewickelt"). Mir war nämlich bis gerade eben überhaupt nicht klar dass die RAM-Karten auf eine bestimmte Adresse verdrahtet sind. Muss ich mir heute abend gleich mal genau anschauen...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
334
23.12.2011, 10:55 Uhr
Olli

Avatar von Olli

Ist dort eigentlich der letzte Stand inkl. Schaltungs und GAL Korrekturen?
Ich meine - da steht unten was im Text dazu, aber ist das auch der finale Stand?

http://robotrontechnik.de/html/eigenbau/p8000ram.htm
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
335
23.12.2011, 10:59 Uhr
kaiOr

Avatar von kaiOr

Wo gibt es eigentlich diese Steckverbinder zur 16Bit-Platine? Ich würde mir das auch auf Lochraster nachstricken.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
336
23.12.2011, 11:03 Uhr
Olli

Avatar von Olli

Gute Frage.... ich hatte damals meine vom KC-Treffen.
Ist aber der normale westliche 3x32 Stecker - also kein EFS.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 23.12.2011 um 11:05 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
337
23.12.2011, 11:59 Uhr
Enrico
Default Group and Edit



Zitat:
kaiOr schrieb
Wo gibt es eigentlich diese Steckverbinder zur 16Bit-Platine? Ich würde mir das auch auf Lochraster nachstricken.

Reichelt, Kessler, etc.
DIN 64012, oder so ähnlich.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
338
23.12.2011, 12:02 Uhr
Enrico
Default Group and Edit



Zitat:
Olli schrieb
Ist dort eigentlich der letzte Stand inkl. Schaltungs und GAL Korrekturen?
Ich meine - da steht unten was im Text dazu, aber ist das auch der finale Stand?

http://robotrontechnik.de/html/eigenbau/p8000ram.htm

Eindeutig JEIN. Funktioniert so wies ist richtig, aber nur allein im Rechner.

Holm hatte mal vor längerer Zeit muckiert, dass man keine org. RAM Karte als 2.
stecken kann.


Wenn da wieder Bedarf an Platinen sein sollte, könnte ich die zusammen mit GNET, M052, etc mitmachen lassen.

Muss das aber im Januar dann mal wissen....
--
MFG
Enrico

Dieser Beitrag wurde am 13.08.2013 um 17:37 Uhr von Rüdiger editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
339
23.12.2011, 13:04 Uhr
otto11




Zitat:
Enrico schrieb

Wenn da wieder Bedarf an Platinen sein sollte, könnte ich die zusammen mit GNET, M052, etc mitmachen lassen.

Muss das aber im Januar dann mal wissen....

Hier ich! Ich nehme eine P8000-RAM Platine.

Ich hatte Dich ja schon in Garitz angesprochen.

Gruß
Jürgen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
340
23.12.2011, 14:37 Uhr
Enrico
Default Group and Edit



Zitat:
otto11 schrieb

Ich hatte Dich ja schon in Garitz angesprochen.

Gruß
Jürgen

Ach, ja?
Ist schon so lange her.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
341
24.12.2011, 17:01 Uhr
Enrico
Default Group and Edit



Zitat:
otto11 schrieb

Zitat:
Enrico schrieb

Wenn da wieder Bedarf an Platinen sein sollte, könnte ich die zusammen mit GNET, M052, etc mitmachen lassen.

Muss das aber im Januar dann mal wissen....

Hier ich! Ich nehme eine P8000-RAM Platine.

Ich hatte Dich ja schon in Garitz angesprochen.

Gruß
Jürgen

Ich habs mal ausgerechnet.

Bei 10 Stück sind das je 22 Euro.
Bei 25 Stück je 17 Euro.

Die müssten dann aber auch zusammenkommen.
10 Jahre will ich mir den Rest nicht wirklich auf Halde legen.

SIMM-Fassuungen habe ich allerdings keine mehr.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
342
20.03.2015, 00:08 Uhr
kaiOr

Avatar von kaiOr

So, ich bin jetzt wohl der Bummelletzte in der Runde, habe die Karte endlich aufgebaut:


Habe weiterhin versucht die Gleichungen im GAL zu entprellen. Zum einen wird jetzt vor Ausgabe vom CAS geschaut, ob der RAS noch steht, zum anderen wird /MOE nun bei Lesezugriff später und bei Schreibzugriff einen Minni-µ früher aktiv.


Quellcode:
.
.
@define CASWWR  "/VZO*/VZI*/BW*/RW*/DS"
@define CASWRD  "/VZO*/VZI*/BW*RW"
@define CASBLWR "/VZO*/VZI*BW*A0*/RW*/DS"
@define CASBLRD "/VZO*/VZI*BW*A0*RW"
@define CASBHWR "/VZO*/VZI*BW*/A0*/RW*/DS"
@define CASBHRD "/VZO*/VZI*BW*/A0*RW"
.
.
/MOE = /VZO*/VZI*RW*/DS + /VZO*/RW
WE = /VZO*/RW
.
.


Ob das was bringt bei der 4+1 Problematik, kann ich nicht sagen, hatte nur 4MB-SIMMs bestellt....

MfG

Dieser Beitrag wurde am 20.03.2015 um 00:10 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
343
20.03.2015, 13:23 Uhr
Enrico
Default Group and Edit


Schick.
Einer muss ja der letzte sein.
Aus dem Auge hatte das Problem mit der RAM-Bestückung
noch nicht verloren, nur keine Zeit das vorzukramen.

Da war aber auch noch das Problem mit RAM-Karte plus org. RAM-Modul,
da kannst dann ja auch gleich mal...
--
MFG
Enrico

Dieser Beitrag wurde am 20.03.2015 um 13:24 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
344
22.03.2015, 16:06 Uhr
kaiOr

Avatar von kaiOr

...hast mich überredet.

Auch bei mir stoppte das nach Test 97, mit "9"..."UNIMPLEMENTED INSTRUCTION TRAP ID= 0F3F".

Die Probleme die ich sah:
Die LED für /WE auf der neuen Karte flackerte fleißig mit, wenn gerade die orig. 1MB-Karte getestet wurde. Da überschnitt sich also irgendwas bei der Adressierung?!

Die Probleme die ich sehe:
Der GAL selbst hat starken Einfluss auf das RAS-CAS Timing (orig. nur vom Verzögerungsglied gesteuert). Der RAS zu den SIMMs läuft dagegen unabhängig von GAL und Adressierung immer los, dadurch macht die Karte vermutlich gehäuft RAS-only Refresh. Das könnte das Timing für normale Zugriffe und den gewollten CAS-before-RAS Refresh erschweren. Mit /AS werden Statussignale (wie z.B. /RFSH) gültig, mit /AS und /MREQ wird aber auch RAS ausgelöst, k.A. ob hier überhaupt ein sauberer CAS-before-RAS Refresh starten kann.

Was die Lösung in der 4+1 Sache brachte:
Bei Lesezugriff muss nach Eintreffen von /VZI das CAS noch früher raus als bisher (ohne weitere Zwischenergebnisse im GAL). Bei Schreibzugriff muss das CAS dagegen mittels /DS und Feedback nach wie vor an der langen Leine gehalten werden.


Quellcode:

title    P8000 RAM 16 MB
pattern  GATES
revision A
author   Grämer / Tiffe
date     25.09.2009

chip GATES GAL22V10

;pin 1       2       3     4    5    6     7     8     9     10   11      12
     JP_BAE  JP_SIT  A0    A21  A22  A23   RFSH  DS    BW    RW   RASEN   GND
;pin 13      14      15    16   17   18    19    20    21    22   23      24
     NC      MOE     CAS1  CAS0 WE   CAS3  CAS2  VWE   VZO   7FH  VZI     VCC

@UES U6

        @define 2MB     "/JP_SIT*/A21*/A22*/A23"
        @define 4MB     "JP_BAE*/JP_SIT*A21*/A22*/A23"
        @define 8MB     "JP_SIT*/A23*7FH"
        @define 16MB    "JP_BAE*JP_SIT*A23"

        @define CASWWR  "/BW*VWE*RFSH*/DS"
        @define CASWRD  "/BW*RW*RFSH*/VZI*RASEN"
        @define CASBLWR "BW*A0*VWE*RFSH*/DS"
        @define CASBLRD "BW*A0*RW*RFSH*/VZI*RASEN"
        @define CASBHWR "BW*/A0*VWE*RFSH*/DS"
        @define CASBHRD "BW*/A0*RW*RFSH*/VZI*RASEN"

equations

        /VZO    = RASEN
        /MOE    = 2MB*RFSH*/VZI*RASEN + 4MB*RFSH*/VZI*RASEN + 8MB*RFSH*/VZI*RASEN + 16MB*RFSH*/VZI*RASEN
        WE      = /RW*/MOE*/DS
        VWE     = WE
        CAS0    = /RFSH*VZI + 2MB*CASWWR + 2MB*CASBLWR + 8MB*CASWWR + 8MB*CASBLWR + 2MB*CASWRD + 2MB*CASBLRD + 8MB*CASWRD + 8MB*CASBLRD
        CAS1    = /RFSH*VZI + 4MB*CASWWR + 4MB*CASBLWR + 16MB*CASWWR + 16MB*CASBLWR + 4MB*CASWRD + 4MB*CASBLRD + 16MB*CASWRD + 16MB*CASBLRD
        CAS2    = /RFSH*VZI + 2MB*CASWWR + 2MB*CASBHWR + 8MB*CASWWR + 8MB*CASBHWR + 2MB*CASWRD + 2MB*CASBHRD + 8MB*CASWRD + 8MB*CASBHRD
        CAS3    = /RFSH*VZI + 4MB*CASWWR + 4MB*CASBHWR + 16MB*CASWWR + 16MB*CASBHWR + 4MB*CASWRD + 4MB*CASBHRD + 16MB*CASWRD + 16MB*CASBHRD

; end of GATES



Bei mir funktioniert das jetzt mit 5MB, beim Neubau des Kernels hakt auch nichts. In der neuen Konstellation leuchten die LEDs für /CAS0 und /CAS2 aber auffällig hell (wenn aus meiner Sicht nichts zu tun ist)...weiß der Geier, was das für Zugriffe sind.

MfG
Kai

Dieser Beitrag wurde am 22.03.2015 um 16:38 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
345
22.03.2015, 17:22 Uhr
Enrico
Default Group and Edit


Prima, dann schick mal reihum.
Wäre gut wann das noch wer gegentesten könnte.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
346
22.03.2015, 17:42 Uhr
kaiOr

Avatar von kaiOr

http://pontacko.tfn-clan.de/files/kc/p8000ram_update.zip

Das Signalspiel der P8000 würde ich gern mal mit LA sehen, im Gegensatz zum KC85 bekomm ich das nicht im Kopf abgebildet.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
347
23.03.2015, 05:57 Uhr
Enrico
Default Group and Edit


Oder Du schaust Dir die CPU- und MMU-Doku an.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
348
24.03.2015, 18:23 Uhr
Enrico
Default Group and Edit


Danke.
Wenn das noch wer gegentesten könnte, wäre das auch gut.
Ich kanns leider vorläufig nicht.
An unsere HP-Obrigkeit sollte das auch noch gehen, um das zu verlinken.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
349
24.03.2015, 18:30 Uhr
Micha

Avatar von Micha

@Enrico: gibts eigentlich von der RAM Karte (ich meine die Platine!) noch Exemplare? Und falls ja eigentlich noch wichtiger: ist der verwendete Typ von RAM inzwischen noch beschaffbar?
Dieser Beitrag wurde am 24.03.2015 um 18:34 Uhr von Micha editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
350
24.03.2015, 19:53 Uhr
Enrico
Default Group and Edit



Zitat:
Micha schrieb
@Enrico: gibts eigentlich von der RAM Karte (ich meine die Platine!) noch Exemplare? Und falls ja eigentlich noch wichtiger: ist der verwendete Typ von RAM inzwischen noch beschaffbar?



Nein.

Ja, sind ganz normale 30 polige SIMMs.
--
MFG
Enrico

Dieser Beitrag wurde am 24.03.2015 um 19:54 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
351
25.03.2015, 09:42 Uhr
Guido
Default Group and Edit
Avatar von Guido

Falls noch jemand SIMs sucht, in 1MB habe ich noch etwa 2 Schuhkartons voll. 4MB leider nicht mehr und 256er vielleicht ein paar Einzelstücke.

Guido
--
Der Mensch hat drei Wege, klug zu handeln.
Erstens durch Nachdenken: Das ist der edelste.
Zweitens durch Nachahmen: Das ist der leichteste.
Drittens durch Erfahrung: Das ist der bitterste.
Konfuzius

Wer immun gegen ein Minimum an Aluminium ist, der hat eine Aluminiumminimumimmunitität.

Dieser Beitrag wurde am 25.03.2015 um 09:43 Uhr von Guido editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
352
11.04.2015, 18:00 Uhr
Micha

Avatar von Micha


Zitat:
Guido schrieb
Falls noch jemand SIMs sucht, in 1MB habe ich noch...


Mir ist inzwischen so eine schöne blaue Donau, ähhm ich meinte: Leiterplatte, zugelaufen. Nur passende SIMMs hab ich leider nicht. 4x1MB täten der P8000 reichen tun. Das ist eh schon viel zuviel Hai-Tech für die Kiste.

Wär nett wenn Du mir 4 so ne 1MB Riegel nach Garitz mitbringen könntest.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
353
11.04.2015, 18:06 Uhr
Enrico
Default Group and Edit


Hab auch noch nen Karton voll SIMMs.

Was manchen Leuten so zuläuft.....
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
354
11.04.2015, 18:14 Uhr
Yogi64



Me too...
--
Wo wir stehen ist vorn - Und wenn wir hinten stehen, ist hinten vorn :-)
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
355
11.04.2015, 18:14 Uhr
Micha

Avatar von Micha

na wenn Du keine LPs mehr rausrückst musste ich doch hinter Deinem Rücken rumforschen ob es irgendwo noch eine gibt

Im Ernst: ich könnte 4 Stück SIMMs gebrauchen, wie gesagt: 4x1MB würden reichen tuten tun.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
356
11.04.2015, 18:54 Uhr
Enrico
Default Group and Edit



Zitat:
Micha schrieb


Im Ernst: ich könnte 4 Stück SIMMs gebrauchen, wie gesagt: 4x1MB würden reichen tuten tun.



Na, wenn es denn reichlich tun täten tuten täte, hätte ich reichlich
da. Stammen zwar auch vom Guido, aber das ist ja Wurscht.


Zitat:
Yogi64 schrieb
Me too...


Ein Chinese?
--
MFG
Enrico

Dieser Beitrag wurde am 11.04.2015 um 18:55 Uhr von Enrico editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
357
11.04.2015, 20:56 Uhr
Guido
Default Group and Edit
Avatar von Guido


Zitat:
Micha schrieb
...
Im Ernst: ich könnte 4 Stück SIMMs gebrauchen, wie gesagt: 4x1MB würden reichen tuten tun.


Ich sehe schon, ich muss unbedingt eine Liste für Garitz machen!
Dennoch vergess' ich eh wieder die Hälfte.

Ich vermute, Du brauchst flache? Oder ist das bei Dir wurscht? Zumindest für das KC-Modul waren immer sehr flache (schmale) gefragt

Guido
--
Der Mensch hat drei Wege, klug zu handeln.
Erstens durch Nachdenken: Das ist der edelste.
Zweitens durch Nachahmen: Das ist der leichteste.
Drittens durch Erfahrung: Das ist der bitterste.
Konfuzius

Wer immun gegen ein Minimum an Aluminium ist, der hat eine Aluminiumminimumimmunitität.

Dieser Beitrag wurde am 11.04.2015 um 20:58 Uhr von Guido editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
358
11.04.2015, 21:09 Uhr
Micha

Avatar von Micha


Zitat:
Guido schrieb
Ich vermute, Du brauchst flache?
Guido



wenn ich nur wüsste was ich brauche - bisher hab ich ja den Aufbau des P8000 RAM Moduls noch nicht mal angefangen.
Egal. Hauptsache Du kommst nach Garitz. Dann wird alles gut.

Bis nächstes WE!
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
359
21.06.2015, 00:51 Uhr
kaiOr

Avatar von kaiOr

Hallo,

Segmente jenseits der 7Fh hochzählen macht WEGA durchaus. Die nicht zum Kernel gehörenden "clicks" mit jeweils 256 Byte werden dabei auch initialisiert/gelöscht, also der gesamte angezeigte User RAM.

...doch weiter komme ich nicht.

Das Lustige ist, WEGA hat u.A. den selben Bug wie die Firmware, nur bei Segment FFh statt 7Fh. Sonst hängt das schon nach Ausgabe der "kernel memory size".

MfG

Dieser Beitrag wurde am 21.06.2015 um 09:46 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
360
21.06.2015, 11:33 Uhr
Mobby5



Hinweis nebenbei:
Das Terminalprogramm hat eigentlich eine "Bild speichern"-Funktion unter "Datei".
--
und ausserdem muss in Zeile 20 der Doppelpunkt durch ein Semikolon ersetzt werden
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
361
21.06.2015, 12:18 Uhr
Olli

Avatar von Olli

bei 16MB macht booten doch keinen Spaße mehr, oder?
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
362
21.06.2015, 13:38 Uhr
kaiOr

Avatar von kaiOr

Hab mir nur gedacht: "Mal kucken wann's knallt." Den Selbsttest vom Monitor kann man wie gehabt überspringen. Danach noch den GAL und den 74HCT30 auf der RAM-Karte für die Lücke bei FFh modifiziert. Aber weiter kommt man nicht ohne den Kernel umzustricken. Wega hängt sich auch nicht richtig weg, "Run" blinkert rhythmisch weiter und bei Druck auf "NMI" ist auch noch irgend ein Register am Hochzählen.

Wenn man die oberen 8MB exklusiv als Cache mit Prefetch im WDC-Treiber einbinden könnte... *träum*

@Mobby5: Den Rahmen hatte ich zu Werbezwecken drin gelassen.

Dieser Beitrag wurde am 21.06.2015 um 13:44 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
363
21.06.2015, 15:02 Uhr
Olli

Avatar von Olli

Mh prefetch? Gerade beim lesen würde ich mal meinen, der Speicher wäre nie voll da WEGA schneller abholt als die PIO vom WDC fetchen kann....

Ich hatte ja mal mit meinem Emulator gemessen....
IDE -> ATMega: 758 KB/Sec
IDE -> ATMega -> PIO -> WEGA: 81.92 KB/Sec

Beim orignal-WDC bin ich übrigens nur auf 54.76 KB/Sec lesend gekommen
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 21.06.2015 um 15:03 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
364
22.06.2015, 18:44 Uhr
kaiOr

Avatar von kaiOr


Zitat:
Olli schrieb
Beim orignal-WDC bin ich übrigens nur auf 54.76 KB/Sec lesend gekommen


Faszinierend, mal abgesehen von der Zugriffszeit ist das Floppy-Niveau.

Gibt es vielleicht eine ungenutzte Status-Leitung, mit der man markieren könnte, dass das nächste Byte komprimierte Daten enthält? Dann könnte man z.B. die Anzahl folgender Duplikate übergeben. Oder falls zwei aufeinanderfolgende Bytes effektiv jewl. kleiner 4Bit sind sie in ein Byte verpacken. *weiterträum*

MfG
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
365
22.06.2015, 19:42 Uhr
Olli

Avatar von Olli

Wenn man die die Firmwares anpasst kann man einfach neue Kommandocodes bauen für "komprimierte Daten". I.d.R. wird unter Wege ja immer eine "Datenmenge" angefordert. Also immer "Alles ab Block 12345678, 512 Bytes bitte" Wenn mich nicht alles täuscht geht das so bis zu 4 KB hoch die an einem Stück angefordert werden - mehr wurde unter WEGA noch nicht gesehen. Aber das ist ganz dünnes Eis gerade.... ich bin mir nicht mehr sicher.

Ein bischen was habe ich hier dazu geschrieben als das Wissen damals noch frisch war

http://www.pofo.de/P8000/wdcemu.php

Man könnte nun ein Pedant zu den Kommandocodes 0x21 und 0x22 schaffen welches Daten komprimiert überträgt. Ist halt die Frage ob die CPU die Komprimierung "schafft" und dadurch in Summe das ganze schneller wird. Auch ist die Frage in wie weit Daten auf der Platte gut komprimierbar sind und wer zum Geier so gut Z80 Assembler kann.... ich nicht Den Z8000-Teil könnte man ja "unbeachtet" lassen. Das komprimieren und dekomprimieren auf der P8000-Seite kann ja der WEGA Kernel übernehmen, da ist man dann mit C unterwegs - analog zum Atmel Emulator.
Wenn man das komprimieren auch mit dem Original-WDC unterstützen will (siehe Z80-ASM Guru needed) müsste man auch checken ob der SRAM auf dem Board dafür überhaupt ausreicht...... ich denke eher mal nicht. Da liegen ja erstmal die WDC Daten die übertragen werden drin und andere Statusinfos usw. Der ist tendenziell "voll".

Oder gleich ein compressed filesystem einsetzen?

Wenn man gut Z8000 Assembler könnte, könnte man auch mal einen Performance-Messer in die Firmware einbauen und direkt die PIO-Schnittstellenkommunikation messen. Dann wüsste man, ob man auch noch was unter WEGA&Co rausholen könnte.
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 22.06.2015 um 19:47 Uhr von Olli editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
366
13.07.2015, 13:41 Uhr
kaiOr

Avatar von kaiOr

Bisher kann ich nur schreiben was nicht geht.

Habe zuerst den Hardware-Weg versucht, die 16Bit-Platine sollte die Daten als Wort statt als Byte lesen um die Datenrate zu verdoppeln. Dazu muss die WDC-Karte 2mal alle 10 Takte abgefragt werden, ein intelligentes Latch in GAL-Form sollte das bewerkstelligen. Aber die Antaktung der Flipflops auf dem WDC ist einfach zu langsam...und weiter wollt ich dann nicht freveln.


Als zweites habe ich die Optimierung des Assemblercodes der disk.s versucht, im Grunde ist da auch nix zu holen, denn die Hauptschleifen mit "inirb" & "otirb" brauchen immer "11+10*n" Takte (n=Anzahl der zu übertragenden Bytes) und haben kein schnelleres Pendant. Bei 250ns pro Takt kommt man damit rechnerisch auf knapp 400kByte/s, 100-200kByte/s sollten mit dem WDC-Emu also schon möglich sein.
Schaufelt man von einem RAW-Device nach /dev/null, sieht man auch anhand der nicht leuchtenden "RUN"-LED, dass die P8000-CPU fast nur auf "Halt" steht und auf Interrupt vom WDC wartet. Noch auffälliger, wenn man die LED-Steuerung in die Software-Warteschleifen der disk.s integriert.

MfG

Dieser Beitrag wurde am 13.07.2015 um 19:51 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek