Beiträge von llm

    Zitat

    Um für DOS das Speichermanagement mit möglichst geringem Aufwand anzupassen, würde ich einfach mit dem oberen Speicherbereich arbeiten und XMS verwenden.

    oder mit DOS-Extender damit man sich nicht mit dem Speicher beschäftigen muss oder willst du zwingend super-alte Systeme supporten?



    Zitat

    Mit Qt habe ich noch nichts gemacht, gucke ich mir aber natürlich gerne an.


    am einfachsten ist wegen Deployment unter Windows natürlich die WinAPI - aber auch nicht so flexibel - Qt ist das schwergewichtiger aber mit dem Maintanance-Tool recht trivial zu installieren und läuft auch unter Linux - aber für ein DOS-Programm wäre das natürlich keine nutzbare Lösung - hast du da irgendeine Idee wie du das unter DOS machen willst - selbermalen? - weil das würde ja so auch unter Windows/Linux gehen


    Zitat

    Es ist eine Seitenlänge der quadratischen Tile-Grafik und damit der Durchmesser des Felds von einer Außenkannte zur anderen:

    ok dann ist deine Beschreibung perfekt


    Zitat

    Dieser "böse" Code macht aber vieles auch lesbarer und stand damals sogar als quasi Standard für den Beginn jedes C Programs in meinem Lehrbuch. Würde man heute vermutlich nicht mehr so in ein Tutorial schreiben.

    ja das steht in jedem "Lehrbuch" und wird auch jedem Erstesemester und Azubi so erstmal beigebracht, obwohl das völliger Schrott ist und im Business verpönt

    weil gerade der std-Namespace besonders voll ist mit Name-clash-problematischen Namen :)

    Zitat

    hier, wie gewünscht, der aktuell Stand mit allen Dateien als ZIP.

    schon lange nicht mehr bare Metal Win32 API in neuem Code gesehen


    das lässt sich natürlich nicht ganz so einfach auf Linux oder DOS portieren :)


    schon eine Strategie: also Qt (auf jeden Fall Multiplatform) oder irgendwie sowas, oder selbst gemalte Pixel-Oberflächen und damit auch DOS kompatibel?

    Zitat

    Das sieht schon mal sehr vielversprechend aus. Allerdings gibt es haufenweise offene Fragen und von einem Player bin ich noch weit entfernt.

    Ein Anfang ist gemacht - d.h. die Befehle sind oft 4bit+4bit kodiert + Daten


    Code
    Spiele Note (1):
    0b|0001|cccc|8 bit A register value|8bit B register value
            ----> Channel 0..8
    
    Setze Lautstärke (3):
    0b|0011|ssss|??? hab hier ist es mir nicht mehr klar wie die Umsetzung funktioniert
            ----> Slots 0..17 ???
    
    und die anderen scheinen ja gezielte Befehle zu sein


    hier eine Doku für den OLP2: http://www.shipbrook.net/jeff/sb.html die für mich ganz brauchbar ist
    die hat mir auch ein guten Einblick gegeben https://saxxonpike.github.io/TechDocs/oplref.html


    hätte fast Bock mir so ein
    https://www.tindie.com/products/cheerful/opl2-audio-board/

    oder

    RetroWave OPL3 Express
    Hardware OPL3 sound card with blazing fast USB interface. Supported by DOSBox-X, ScummVM and OPL3BankEditor. Works with modern DAWs and MIDI keyboards. Audio…
    shop.sudomaker.com

    zu kaufen

    hier ist das Handbuch: https://www.kaiserlich.com/ftp/_dos/hl14_18.pdf


    auf Seite 46 steht wie man sich die Einheitenwerte anschauen kann - für den Spähpanzer prüfen ob die Werte irgendwo in den ersten 69 bytes zu finden

    sind und dann bei einem (einer nach dem anderen mal +1 oder -1 machen) und schauen was das Spiel dazu sagt - dafür muss man aber sicherlich immer wieder das Spiel neu starten - denke nicht das die Werte immer wieder eingelesen werden sonder vielleicht nur 1 mal am Anfang

    Zitat

    ich muss mal fragen - wo spiele ich mit Einträgen rum - im Hexeditor Bereich vor der Unit-Bezeichnung? Und mit welchen Werten starte ich da sinnvollerweise - also Hexwerte für 0, 1, 2 etc?

    ich hab keine Ahnung - gibt es eine Möglichkeit die "Stärken" irgendwo im Spiel zu sehen - dann schauen ob das mit den Werte aus der .DAT zugeordnet werden kann - das ergibt dann langsam ein Schema

    Wertegrenzen sind schwierig es könnte was lineares sein 0,1,2,3, 8- oder 16bit oder eine Auflistung z.B. 1,5,7,9


    in diesem Post hat Dragonsphere ja schon ein wenig angefangen das zu verstehen


    also Handbuch-Werte mit der Datei vergleichen oder so wäre wohl sinnvoll

    vielleicht Battle Bugs?


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Battle Bugs (1994) - MobyGames
    A very unique real-time strategy game. It's only semi-real-time, because it's possible to pause the action at any moment. The player commands 22 different…
    www.mobygames.com

    Zitat

    denn sie enthält die Soundeffekte für das Menü und ist wie eine LIB-Datei aufgebaut:


    das hab ich doch schon vor Tagen gepostet :)


    Zitat

    Wenn ich etwas Zeit finde, packe ich die Werte mal in den Instrument-Editor eines Adlib-Trackers und gucke, ob ich dann einen bekannten Ton aus dem HL-Menü bekomme :)

    sieht ja auch fast so aus als wenn das beinhahe klar wäre wie es läuft


    könntest du deinen alten Player drauf ummodeln oder unterscheidet sich das doch zu stark?

    Zitat

    Richtig viel los ist auf Kanal 2, also bei den Registern 0xA2 und 0xB2. Die ersten 14 (!) Noten sind hier alle F-3.

    (Einfach mal mit dem Hexeditor nach der Bytefolge "CAA22DB2" suchen).

    ich hab da bisher nicht so direkt was gefunden - aber möglichweise sind da auch einfach andere Werte dazwischen - kennen mich null mit dem OLP2 aus - also wenig "das kenn ich doch irgendwo her" Momente


    auch bin ich mir nicht sicher welche ADL/AFX Datei abgespielt wird wenn man im Menü ist

    Der History Line 1914-1918 Artikel in der Modding Wiki ist jetzt soweit fertig.

    Ich habe in den letzten Tagen nach und nach immer ein bisschen mehr Infos ergänzt und hoffe, ich habe nun alles wesentliche zusammen. Haben hier ja wirklich eine Menge rausbekommen :D

    ja, relevante Lücken gibt es kaum noch - dann kommt nur noch ein vollständiges Reverse Engineering als Aufgabe in Frage - falls die Langeweile mal wieder explodiert :)

    Ja, ich hatte das erst so verstaden, dass in den Chunks mit "TRCK"-ID tatsächlich 33 oder 34 Byte mehr Daten vorhanden sind, als trck_value vermuten ließe. Da hätte ich dann auf die Instrumentdaten getippt.

    ne andersrum - das trck_value ist immer 33 oder 34 größer als die echten track_data bytes (bei konstanter header size bis zu den trck_data)