Wire-CPU-Chip funktioniert nicht
Servus
Eins vorweg: Ich habe die Wire-SVN-Version von hier: http://www.garrysmod.de/forum/showthread.php?t=23938
Ich habe mir in meinem CPUChip Ordner eine Test.txt erstellt wo drinsteht:
CODE;
loop:
mov eax,port0;
cmp eax,0;
je loop;
mov port0,1;
jmp loop;
(hab ich aus dem CPU-Tutorial)
Dann habe ich in Gmod in den CPU-Einstellungen in die Textzeile "Test.txt" eingegeben (So wie hier: http://s3.directupload.net/file/d/1921/3co7wx7u_jpg.htm ). Wenn ich dann "Load into Compiler" drücke und den CPU-Chip updaten will, passiert nichts und in der Konsole steht das:
----> ZyeliosASM compiler - Version 2.0 (SVN REV 0/900) <----
-> ZyeliosASM: Compiling...
-> ZyeliosASM: Pass 1
-> Error at line 1: Expected '#' for memory reference
-> ZyeliosASM: Pass 2
-> ZyeliosASM: Compile aborted: fatal error has occured
Das ist mein erster Versuch am CPU-Chip und überhaupt kenn ich mich mit solchen Sachen eigentlich nicht aus. Ich hoffe mir kann jemand sagen was ich falsch gemacht hab :gmod:.
PS: In der Suchfunktion hab ich nichts gefunden und ich hoffe ich hab das richtige Unterforum erwischt :lol:.
MfG
AW: Wire-CPU-Chip funktioniert nicht
Zitat:
Zitat von
Tyrstock
Code:
CODE;
loop:
mov eax,port0;
cmp eax,0;
je loop;
mov port0,1;
jmp loop;
Hallo. :3
Also, der Code ist irgendwie Komisch, sollte aber funktionieren, laut dem Tutorial.
Jedoch ist das mit den "port0", "port1", "port2", Kaputt. Es funktioniert nie richtig. Und erwartet deswegen, dass "port0" Memory ist, weil er das Macro so nicht findet. Und denkt dass das eine vordefinierte Speicheraddresse ist.
deswegen:
Code:
CODE; //Eigentlich unnütz, du hast keine Definierten Objekte.
loop;
in eax,0; //Alles aus Port 0 wird in eax geschoben.
cmp eax,0; //Eax wird nun mit 0 verglichen.
je loop; // Falls die beiden gleich sind, springe zu Loop.
out 0,eax; // Alles aus Eax wird in Port 0 geschoben.
jmp loop; // Und wieder in den Mainloop zurück.
Ich weiß jetzt leider nicht ob das funktioniert. Wenn nicht, probier doch mal die Parameter von "in" umzutauschen, also in 0,eax oder bei out; out eax,0.
Ich hoffe ich konnte dir helfen.
AW: Wire-CPU-Chip funktioniert nicht
Hi Andrey,
erstmal danke für den Post.
Ich habs jetzt mit deinem vorgschlagenem Code probiert und ich hab auch mal in eax,0; mit in 0,eax; und out 0,eax; mit out eax,0; vertauscht. Dennoch die selbe Fehlermeldung.
Außerdem hab ich noch einen Code aus einem anderen Tutorial ( http://www.wiremod.com/forum/wiremod...basic-cpu.html bei Step 3) probiert. Wieder dasselbe.
Was mir gerade eben noch aufgefallen ist, wenn ich den CPU-Chip updaten will, erscheint links oben unter der Tool-Beschreibung (also hier: http://s12.directupload.net/file/d/1...9vgja2_jpg.htm ) für nicht mal eine Sekunde ein Ladebalken, in dem steht: "Initializing 0%". Leider is der Balken so schnell wieder weg, dass ich ihn auf keinen Screenshot bekomme :gmod:.
MfG
Edit: Ok, das Problem ist anscheinend gelöst :gmod:. Ich weis zwar selber nicht wieso es jetzt funktioniert, aber ich habs einfach nochmal probiert und jetz gehts eben. Komisch :-?. Naja jedenfalls danke für die Bemühung Andrey ;).