Posts by Hoogo

    Aus meinem Erleben war früher der typische Ablauf zum Einrichten einer Schnittstelle so:

    Manager haben entschieden, dass wir so eine Schnittstelle brauchen. Danach gab es noch noch ein oder 2 Meetings mit den beteiligten Firmen, und danach hatte man einen Ansprechpartner, der das programmiert. Damit ergab sich ein 2-Mann-Team, und man hat das ganze direkt miteinander abgewickelt. Bei Problemen war man "irgendwie" verantwortlich und hat sie gelöst. Man war gleichzeitig Programmierer, Designer, Helpdesk, und was es sonst noch so gibt.


    Heute sieht es eher so aus:

    Die Programmierer von damals sind in Rente, die Programmier-Abteilungen wurden aufgelöst, und man hat nun einen Manager und einen Externen. Der Manager nimmt, was am besten und modernsten klingt und die größten Versprechen gibt. Der sieht eine Webseite mit MVC, C# und Blablabla, die sieht besser aus als ein Textterminal, auch wenn in der Präsentation die Elemente Optionbutton und Label heißen und die wahren Schwierigkeiten nicht im allergeringsten adressiert sind.

    Technik hat auch Inhalt verborgen. Es ist JSon und Standard, dennoch muss man nicht alles in Textfelder packen und sich keine Gedanken über Normalisierung machen. Aber passt schon, ist ja Mongo-DB. Eine Schnittstelle liefert öfters mal Länge/Breite Höhe in Stück. Leider fehlt mir ein zuständiger Ansprechpartner, der das beheben könnte, denn unsere Schnittstelle ist nur noch eine Ausleitung aus einem anderen Datenaustausch, für den andere Verantwortlich sind. Vielleicht gibt es diese Anderen noch, vielleicht sind die als Externe auch am Ende der Systemumstellung verschwunden...


    "Warum ist manchmal das Entwickeln von Software so ein Riesenproblem?"

    - Es klappt ziemlich sicher, wenn einer mit Durchblick und ausreichend Entscheidungsbefugnissen eine tatsächliche Verantwortung trägt. Torvalds trägt so eine Verantwortung, Musk auch, extern für Einzelaufgaben Hinzugekaufte tun das nicht. Manager mit Karrierewünschen ebenfalls nicht, die wollen irgendwann weiterziehen.

    - Verantwortung wird vermieden, man ist nicht zuständig. Probleme könnten in 5 Minuten besprochen und gelöst sein, aber man produziert Tickets und Eskalationen und beteiligt 5 Leute eine Woche in Meetings. Qualitätsmanagement hatte mal einen anderen Sinn.

    - Je größer ein Projekt, desto mehr Teilaufgaben, desto mehr Management-Aufgaben, desto mehr Idioten.

    - Projekte werden zu groß. Heute will man mit einer Software alle Aufgaben eines großen Konzerns auf mehreren Kontinenten erledigen.

    - Je größer ein Unternehmen wird, desto schwieriger ist es, Informationen zu beschaffen. Die Leute erledigen seit Jahrzehnten Ihre Aufgaben, in solchen Zeiträumen entwickeln verschiedene Abteilungen verschiedene Sprachen. Ganz feine Aufgabe, dort alle nötigen Anforderungen zu sammeln und von den unnötigen zu trennen.

    - Die Idee scheint verbreitet, dass schon die Verwendung modernerer Technik Probleme löst. Tut sie nicht.

    Aus allen In- und Out-Positionen eine Shift-Zahl machen. Also wie viele Bits muss man IN nach RECHTS schieben, um es auf OUT zu mappen?

    Gibt es mehrere Input-Werte mit gleicher Shift-Zahl?

    Die können dann in einem Rutsch mit gleicher Maske behandelt werden.


    Ich nehme an, dass sich OUTxx nicht während eines Programmlaufs ändert oder sogar komplett festgelegt ist, sonst lohnt es sich nicht:

    Ich erinnere mich auch, dass damals 5 Sprites irgendwie im Gespräch waren... Das war die Zeit, als auch die ganzen $d011-Effekte aufkamen und mir unklar war, was da eigentlich passiert und ob es das TIming ändert.


    - Ich bin sicher, dass ich es mit 4 Sprites 4567 gemacht habe.

    - Bin mir auch (ziemlich) sicher, dass es nicht mit 34567 ging.

    - Ich erinnere mich auch, dass meine ersten Versuche mit Sprite 0 anfingen und gescheitert waren.

    - Und dass es mit INC/DEC oder STA ABY geht. Wichtig war halt ein Befehl mit einem internen Takt, um die 3 Takte Lesesperre des VIC zu umgehen und die passende Stelle zu treffen.


    Woran ich mich nicht mehr erinnere:

    - War auch ein 5 Zyklen-Befehl in Badlines nötig, wenn gar keine Sprites eingeschaltet sind?

    - Gingen andere Sprites in Badlines überhaupt nicht, weil die passende Stelle unerreichbar war?

    - Oder ging es schon mit einzelnen anderen Sprites, und es fehlten dann nur die Zyklen, um den Rahmen in der nächsten Zeile rechtzeitig wieder einzuschalten?


    Wenn ich richtig rechne, dann müssten in einer Badline mit 5 Sprites 50 Takte verbraucht, 6 fürs Lesen gesperrt und 7 Takte übrig sein.

    Das dürfte den Optimismus erklären, dass es mit 5 Sprites gehen müsste und nur das Timing kompliziert ist.


    Wenn ich mir das heute nochmal antun wollte:
    - Erstmal testen welche Befehle mit 0 Sprites möglich sind.

    - Dann, ob es mit einzelnen anderen Sprites geht.

    - Checken, ob das Problem mit 5 Sprites in der Badline oder der Zeile danach liegt. Spitzfindig kann man ja sagen, dass 5 Sprites + Badline + Border gehen...

    - Gucken, ob es einen illegalen mit 2 verschiedenen Schreibzyklen gibt.

    - Gucken, ob sich $d011 erzwungene Badlines mit Sideborder kombinieren lassen. Ich denke zwar nicht, aber das ist alles lange her.

    "Repariert" wäre etwas zu viel gesagt...

    Tastatur für die Steuerung der Säge ging nicht mehr. Zeitgenössischer PC, aber die Verlängerung zum eigentlichen Platz war auf DIN-Stecker ausgelegt.


    Wer schleift seit 25 Jahren 2 DIN-Tastaturen im Schrank mit sich?

    Und welcher Kollege hat die irgendwann "entmistet"???

    Ich hatte aber noch eine zu Hause, der Tag war gerettet.
    Ob die defekte Tastatur zu retten ist probiere ich bei Gelegenheit.

    Vielleicht kann Korrosion durch eingedrungenes Spüli-Wasser nach Jahren zu Defekten führen, vielleicht ist es zu vorsichtig...

    Aber ich finde "Bei mir ist es immer gut gegangen" ist kein gutes Argument in Anbetracht von Effekten, die erst Jahre später auftreten.

    ...Es wird doch immer der String mit der höchsten Adresse im unaufgeräumten Bereich gesucht, dieser dann nach ganz oben verschoben, und dann das Ende des unaufgeräumten Bereichs heruntergesetzt. Strings über $c000 sehen bei der GC dann also schon von Anfang an so aus, als seien sie schon aufgeräumt.

    Sieht nach einer sinnvollen Umsetzung aus, wird dann wohl so sein. Hätte aber auch was von "Suche den höchsten String und schiebe ihn ans Ende" drin sein können. Ich hab mich jedenfalls daran erinnert, dass Strings innerhalb des Programms ein extra abgefragter Sonderfall sind,

    Manhattan ist ein fein abgestimmtes herrliches Grau, es sieht mondän aus, ist unserer Zeit voraus und hat keine schönere Aufgabe, als Zufriedenheit zu bringen. So eine Farbe muss einfach so heißen wie der Ort aller Fantasien: Manhattan.


    :applaus:Das war bestimmt ein ganz feines Meeting, in dem man sich für diese Beschreibung entschieden hat. Ist es herrlich oder strahlend? Mondän oder luxuriös? Schön oder ehrenhaft?


    Gibt es so eine Beschreibung auch für den Matsch des Brotkastens?

    Ich fahre ja ne alte Karre (Seat Leon 1M1) mit mittlerweile über 450Tkm. Wer kann das überbieten?? :-D

    Jetzt frag ich mich, was aus MAT/Ozone geworden ist...

    Der kam glaub ich aus Spanien und lebte glaub ich in seinem Mercedes. Damit ist er von Party zu Party gefahren, hatte traditionell freien Eintritt und wurde als Party-Spiel mit Geld beworfen. Die Karre hatte damals > 1 Mio runter.

    Das wird nicht in gleicher Qualität gehen wie im Vice oder Emulator-basierten Debuggern.


    Die CPU-Bremse mit IRQ ist quasi die unterste Stufe an Qualität. Sie kann ein Hauptprogramm langsamer machen, wenn es mitspielt, bringt aber IRQ-Routinen durcheinander und bringt nichts für den Zweck, Speicherzugriffe an LEDs sichtbarer zu machen.


    Nächste Stufe wäre dann vielleicht, die CPU "richtig" langsamer zu machen, vielleicht mit BA, vielleicht einen falschen Takt unterjubeln oder sonstwas. IRQ-Routinen werden aber genau so oft gestartet wie vorher, Timer zählen wie vorher... Auch da wird schnell was schief gehen, und die Speicherzugriffe an der LED werden auch nicht sichtbarer.


    "Letzte" Stufe wäre imho, richtig den Takt runterzudrehen. Videoausgabe gibt es dann nicht mehr, ob RAM noch funktioniert kann ich nicht sagen. Vielleicht stürzen der VIC oder die CPU auch richtig ab.


    Das Chamaeleon hätte glaub iche Chance, sowas zu tun. Aber ist das dann noch Original?