{"id":126,"date":"2024-06-19T17:49:06","date_gmt":"2024-06-19T15:49:06","guid":{"rendered":"http:\/\/amms-bbs.de\/?p=126"},"modified":"2024-06-19T17:52:32","modified_gmt":"2024-06-19T15:52:32","slug":"amiga-dos-batches-im-file-system","status":"publish","type":"post","link":"https:\/\/amms-bbs.de\/index.php\/2024\/06\/19\/amiga-dos-batches-im-file-system\/","title":{"rendered":"Amiga-Dos-Batches im File-System"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\"><\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">                      Amiga-Dos-Batches im File-System\n                      --------------------------------\n\n\nIn den Verzeichnissen\n\nMBBATCH:DOWNLOAD\/               Aufruf nach vollstaendigen Download\nMBBATCH:FILEBATCH1\/             Aufruf durch Taste 1\nMBBATCH:FILEBATCH2\/             Aufruf durch Taste 2\nMBBATCH:FILEBATCH3\/             Aufruf durch Taste 3\nMBBATCH:FILEBATCH4\/             Aufruf durch Taste 4\nMBBATCH:FILEBATCH5\/             Aufruf durch Taste 5\nMBBATCH:FILEBATCH6\/             Aufruf durch Taste 6\nMBBATCH:FILEBATCH7\/             Aufruf durch Taste 7\nMBBATCH:FILEBATCH8\/             Aufruf durch Taste 8\nMBBATCH:FILECHECK\/              Aufruf durch Taste C\nMBBATCH:FILELIST\/               Aufruf durch Taste v\nMBBATCH:UPLOAD\/                 Aufruf nach vollstaendigen Upload\n\nliegen alle Amiga-Dos-Batches, die beim File-System ausgefuehrt werden.\nIhre Namen muessen immer der Endung des Files entsprechen (z.B. GIF beim\nFile ANETTE.GIF), die beim File-System bearbeitet werden sollen.\n\n\nDie Amiga-Dos-Batches sind frei programmierbar, beim Upload, Download,\nFile listen und File pruefen sollten aber solche Funktionen vorgesehen\nwerden. Die Funktionen der Batches der Tasten 1 bis 8 sind allerdings\nabsolut frei waehlbar.\n\n\nDiesen Amiga-Dos-Batches werden ueber folgende Variablen Informationen\nzur Verfuegung gestellt :\n\n${BOARD}        Brettname (leer, wenn kein Brett)\n${CLS}          AMMS-Sequence zum Loeschen des Screens (sethflags t1)\n${CON}          Port-Consolen-Status (0=keine Console,1=Console)\n${FILE}         Pfadname+Filename\n${FILEPART}     Filename\n${PATHPART}     Pfadname\n${LEVEL}        Level des Users\n${NAME}         Username\n${PORT}         Aktueller Portname\n${SYSOPACC}     Sysop-Zugriff auf File (0=kein Zugriff,1=Zugriff)\n${DOWNACC}      Download-Zugriff auf File (0=kein Zugriff,1=Zugriff)\n${UPACC}        Upload-Zugriff auf File (0=kein Zugriff,1=Zugriff)\n${DELACC}       Loesch-Zugriff auf File (0=kein Zugriff,1=Zugriff)\n${OWNER}        Uploader des File (0=nein,1=ja)\n\n\nUeber den DOS-Befehl AMMS:C\/SETHFLAGS kann auf die Ein-\/Ausgabe direkt\nEinfluss genommen werden :\n\nBeeinflussung der Ein-\/Ausgabe: sethflags &lt;Flags>\n-------------------------------------------------\nFlags:  AN      AUS     Funktion\n             (Default)\n        r1      r0      Raw-Eingabe\n        o1      o0      Raw-Ausgabe\n        m1      m0      More ein\n        t1      t0      AMMS-Textfunktionen anzeigen\n        c1      c0      CTRL-C erlaubt\n        x1      x0      CTRL-X erlaubt (entspricht CTRL-D im Amiga-Dos)\n        e1      e0      Bei Fehler -> CTRL-C\n        f1      f0      Bei Fehler -> CTRL-X\n\nBeispiel: sethflags r1o1c0x0\n\n\nDamit das File-System auch Informationen nach Beendigung der Amiga-Dos-Batch\nerhalten kann, existiert der Befehl AMMS:C\/SETRETURN :\n\nRueckgabewert : setreturn \"[Parameter] [Parameter] [...]\"\n---------------------------------------------------------\nCHANGEDAT       Filedaten wurden geaendert (z.B. Laenge)\nCOMMENT=&lt;Str>   Aendere Kurz-Kommentar zum angegebenen String\nDELETE          Loesche File\nECOMMENT        Extra-Kommentar existiert (z.B. Vorgabe beim Upload)\nNOEDIT          Keine Extra-Kommentar-Eingabe beim Upload\nREFRESH         Screen muss wegen Ausgaben neu aufgebaut werden\nREFRESHLINE     Zeile wegen Datenaenderung neu aufbauen\nRENAME=&lt;Name>   File in den angegebenen Namen umbenennen\nWAIT            Auf Taste warten (inc. Warte-Text)\n\nBeispiel: setreturn WAIT REFRESH COMMENT=\"Ein Kommentar\"\n\n\nAls Beispiel folgt nun eine Amiga-Dos-Batch, die beim Upload eines LHA\nArchives aktiviert wird und dabei das File FILE_ID.DIZ  extrahiert und\nzum Extra-Kommentar macht. Existiert dieses File nich im Archiv, so\nmuss der User einen Extra-Kommentar selber eingeben :\n\nset RETURN \"REFRESH\"                    ; Bildschirmrefresh am Ende\nsetreturn ${RETURN}                     ; Rueckgabewert speichern\n\nsethflags t1m1                          ; Textfunktionen an, More an\necho \"${CLS}\"                           ; Bildschirm loeschen\nsethflags t0                            ; Textfunktionen aus\n\n; Existiert das File lharemove, so sollen alle darin angegebenen Files\n; aus dem Archiv geloescht werden\n\nif exists \"mbbatch:upload\/lharemove\"\n lha &lt;nil: >nil: -P-1 -imbbatch:upload\/lharemove d \"${FILE}\"\nendif\n\n; Handelt es sich um ein Brett, so soll das File FILE_ID.DIZ extrahiert\n; werden und zum Extra-Kommentar umbenannt werden.\n; Existiert es nicht, so soll der User einen Extra-Kommentar nach dem\n; Ende dieser Batch eingeben.\n\nif \"${BOARD}\" NOT EQ \"\"\n delete >nil: \"mbmsg:point\/${PORT}\/File_ID.diz\"\n lha &lt;nil: >nil: -P-1 x \"${FILE}\" \"mbmsg:point\/${PORT}\/\" File_ID.diz\n if exists \"mbmsg:point\/${PORT}\/File_ID.diz\"\n  echo \"Using File_ID.diz from Archive.\"\n  copy >nil: \"mbmsg:point\/${PORT}\/File_ID.diz\" \"${FILE}@HLP\"\n  delete >nil: \"mbmsg:point\/${PORT}\/File_ID.diz\"\n  setreturn ${RETURN} ECOMMENT NOEDIT\n endif\nendif<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-126","post","type-post","status-publish","format-standard","hentry","category-doku"],"_links":{"self":[{"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/posts\/126","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/comments?post=126"}],"version-history":[{"count":3,"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/posts\/126\/revisions"}],"predecessor-version":[{"id":129,"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/posts\/126\/revisions\/129"}],"wp:attachment":[{"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/media?parent=126"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/categories?post=126"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/amms-bbs.de\/index.php\/wp-json\/wp\/v2\/tags?post=126"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}