Non-ATARI > Hardware
Allgemeines zum Thema IDE/Byteswap/MagicBytes
1ST1:
Die Hardwaretricks von Thunder werden erst von HDDRIVER 10 unterstützt.
Was für ein Yamaha meinst du? Ein SCSI zu CF/SD/IDE-Adapter? Bitte bedenke, dass SCSI am TT 8 Bit breit ist und daher keinen Byteswap benötigt. Der Yamaha handelt das intern ohne Fallunterscheidung.
Alle Register die für den IDE-Disk-Zugriff benötigt werden, liegen auf der Platte, auch sonst alles, denn das war ja das revolutionäre an IDE, nämlich dass der Controller komplett auf die Platte gewandert ist. Die IDE-Schnittstelle selbst ist wie schon angedeutet, ein abgespeckter ISA-BUS, der nur noch aus den Leitungen besteht, die die Laufwerke brauchen, also Datenbus, zweidrei Adress-Signale und ein bischen Handshake. Das was im PC als "IDE-Controller" bezeichnet wird, ist im einfachsten Fall - wie czietz angedeutet hat - nur ein Adressdecoder und ein paar Puffer für den Datenbus.. Übrigens, wenn neuere IDE-Platten in PCs (Ultra-)DMA-Zugriffe machen, dann wird quasi der Bock zum Gärtner, die Platte steuert dann nämlich den Rechner.
ari.tao:
--- Zitat von: gh-baden am Mo 18.12.2017, 21:45:44 ---... das erklärt sich dadurch, dass dein Datenträger für den Atari dann eben _kein_ IDE-Gerät ist, sondern ein SCSI-Gerät.
--- Ende Zitat ---
Das ist richtig, für den Yamaha_V769970-Adapter, SCSI2IDE.
--- Zitat von: gh-baden am Mo 18.12.2017, 21:45:44 ---... Und das ganze Byteswap-Thema dort nicht existiert. ...
--- Ende Zitat ---
Das ist so nicht ganz richtig: Wenn ich ihn mit einem Atari-Medium (ie. BigEndian) füttere, dann wird die Geschwindigkeit ~ halbiert! Also macht HDDRIVER_8.45 den ByteSwap.
Diese Diskussion hatten wir doch schon einmal. Da macht XFERRATE eine klare Ansage.
1ST1:
BigEndian ist für IDE ja auch eher die Ausnahme. Und ein an einem Atari-IDE-Controller beschriebenes Medium wieder per Yamaha an einem Atari einzulessen ist ja wohl das sinnloseste Szenario was man sich vorstellen kann.
ari.tao:
--- Zitat von: ari.tao am Mo 18.12.2017, 22:45:55 ---
--- Zitat von: gh-baden am Mo 18.12.2017, 21:45:44 ---... das erklärt sich dadurch, dass dein Datenträger für den Atari dann eben _kein_ IDE-Gerät ist, sondern ein SCSI-Gerät.
--- Ende Zitat ---
Das ist richtig, für den Yamaha_V769970-Adapter, SCSI2IDE.
--- Zitat von: gh-baden am Mo 18.12.2017, 21:45:44 ---... Und das ganze Byteswap-Thema dort nicht existiert. ...
--- Ende Zitat ---
Das ist so nicht ganz richtig: Wenn ich ihn mit einem Atari-Medium (ie. BigEndian) füttere, dann wird die Geschwindigkeit ~ halbiert! Also macht HDDRIVER_8.45 den ByteSwap.
Diese Diskussion hatten wir doch schon einmal. Da macht XFERRATE eine klare Ansage.
--- Ende Zitat ---
Ich hatte auch schon mal darauf hingewiesen, daß Endianess eine Aussage darüber ist, wie die Daten auf einem Medium liegen, egal ob das Medium ein RAM oder eine CF oder sonstwas ist, und daß der Übertragungsweg dafür keine Rolle spielt. Daß das Protokoll (also SCSI oder IDE) ebenfalls Einfluß auf die Geschwindigkeit hat, das ist davon unabhängig. Hier mal die Ergebnisse:
--- Code: --- XFERRATE v1.1 starting
Testing drive K:
Rwabs() transfer rate: 1100-1240 kb/sec
XHDI transfer rate: 1250-1230 kb/sec
Testing drive S:
Rwabs() transfer rate: 1330 kb/sec
XHDI transfer rate: 1310-1330 kb/sec
XFERRATE exiting with code 0
--- Ende Code ---
wobei S mit BigEndian am IDE-Bus des Falcon hängt und K mit LittleEndian über den Yamaha aber an dessen SCSI-Bus. Und nun bei ansonsten unveränderten Bedingungen das gleiche mit vertauschten Medien, also BigEndian am Yamaha und LittleEndian am IDE:
--- Code: --- XFERRATE v1.1 starting
Testing drive S:
Rwabs() transfer rate: 490 kb/sec
XHDI transfer rate: 530 kb/sec
Testing drive K:
Rwabs() transfer rate: 530 kb/sec
XHDI transfer rate: 530 kb/sec
XFERRATE exiting with code 0
--- Ende Code ---
Wie man an den vier Beispielen sieht, wird die Geschwindigkeit auch halbiert, wenn man ein am PC mit LittleEndian beschriebenes Medium in den BigEndian-IDE-Port des Falcon füttert anstatt in den Yamaha (weil wieder ByteSwap sein muß).
Das machen sicher viele so. Der zuerst beschriebene Fall ist übrigens bei mir nützlich, um Daten zw. TT (mit Y.!) und Falcon auszutauschen.
PS: Aber für beides reicht die Vorstellungskraft eines gewissen Forumsmitglieds ganz offenbar leider nicht.
PS2: Warum breite ich das hier so aus - obwohl doch der Yamaha-Adpt. so selten ist? Weil das Thema sowohl mit dem Thunder als auch mit EmuTOS wieder hochaktuell ist. Darum eben auch meine Frage, ob der Kabel-Twist für EmuTOS jetzt der Normalfall ist (wie es wünschenswert wäre, wg. des dargestellten Szenarios).
Darum hier noch einmal mein Kompliment an die Entwickler des Thunder & des EmuTOS-Treibers! (und damit indirekt auch an PPERA, dem Erfinder des Twists*!)
*Ach was, diesen Tanz hat doch ganz wer anders erfunden?
mfro:
--- Zitat von: 1ST1 am Mo 18.12.2017, 18:01:01 ---Ich habe ja genau deswegen "eine Art verlängerter" geschrieben und nicht nur "verlängerter".
--- Ende Zitat ---
Jetzt wirst Du aber (mal wieder) spitzfindig.
Auch wenn's vielleicht in Wikipedia steht: ATA-1 (aka IDE) hat einen fundamentalen Unterschied zum ISA-BUS: ersteres ist asynchron, letzteres synchron. Die Kommunikation über den ISA-Bus funzt nur, wenn alle Karten mit dem gleichen Taktsignal arbeiten, das der Host bereitstellt.
IDE hat keine Taktleitung; die Gültigkeit der Daten auf dem Bus wird durch read/write Strobes angezeigt - komplett asynchron. Das funktioniert völlig anders als ein synchroner Bus (und deswegen kann man ihn auch fast überall - z..B. an alte 8-Bitter - relativ simpel dranhängen).
Wenn Du IDE unbedingt mit "irgendwas verlängertem" vergleichen willst, dann vergleich's mit einer Centronics-Schnittstelle. Die arbeitet genauso.
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln