Quick-Tips

LDIV unter PURE C

Der PURE-C-Compiler unterstützt zwar den 68020 und den arithm. Coprozessor, aber die Libraries haben mit Ausnahme der PC881LIB.LIB keinen Bezug auf den Befehlssatz des 68030. Dies störte mich insbesondere deshalb, weil der Befehl „LDIV“ der Standardbibliothek PCSTDLIB.LIB nur durch Befehle des 68000 recht umständlich „simuliert“ wird. Der 68030 hat nun 6 neue Divisionsbefehle erhalten („divs.l", „< ea >,Dr:Dq“, 64-Bit-Dividend usw ), welche natürlich unvergleichlich schneller arbeiten als die angesprochene Simulation.

Sie können aber LDIV um den Faktor Zwei schneller machen, und das geht so: Tippen Sie das kleine Listing ein und assemblieren Sie es (Assembler-Schalter für 68030-Code). Den Objektcode benennen Sie in „LDIV.LIB" um und kopieren ihn in den LIB-Ordner. In der Projektdatei müssen Sie nur noch den Namen der neuen Library eintragen, allerdings unbedingt vor dem Eintrag „PCSTDLIB.LIB“, weil sonst die Ersatzfunktion für LDIV nicht eingebunden wird.

J. Fischer

        .text
export  ldiv
ldiv:   dival.l     d1,d2:d0    ;mit 32-Bit-Rest und Quotient
        movea.l     4(sp),a0    ;Adresse der LDIV-Struktur in a0 
        move.l	    d0,(a0)     ;Quotient sichern
        mova.l      d2,4(a0)    ;Rest sichern
        rts	                    ;zurück zum Hauptprogramm

Packer automatisch starten

Da ich sehr gerne mit dem LZH-Packprogramm arbeite, habe ich mir des Desktop so eingerichtet, daß ich *.LZH-Dateien nur auf das LZH.TTP-Icon zu moven brauche, um die entsprechende Datei zu entpacken.

Wollte ich aber nur mal kurz den Inhalt einer *.LZH Datei auflisten lassen, mußte ich bisher immer das LZH.TTP-Icon anklicken und die Option „l -h“ für 'liste' und ,holdscreen‘ eingeben. Dies wurde mir auf Dauer zu lästig. Wie bringe ich nun meinen TT dazu, beim Anklicken einer *.LZH-Datei den Inhalt des Archives aufzulisten?

P 03 04 200 C:\LZH.TTP@ 
*.LZH@ l -h @

... war die Lösung. Diese Zeile muß nur mit einem Editor der NEWDESK.INF hinzugefügt werden. Wichtig ist das Leerzeichen hinter ,-h\ sonst wird die Option nicht erkannt, und LZH.TTP findet die zu entpak-kende Datei nicht. Sollte LZH.TTP bei Ihnen nicht im Wurzel Verzeichnis der C-Partition stehen, müssen Sie nur den korrekten Pfad eintragen. Viel Spaß mit einer wieder etwas benutzerfreundlicheren Arbeitsumgebung!

C. Dähne

Aus 25pol. Sub-D mach 19pol.

Schließt man einen Mega-ST an eine Megafile-Festplatte an, ist das von ATARI gelieferte Kabel eigentlich viel zu lang, und weil es relativ steif ist, wird man gezwungen, hinter den Geräten viel Platz zu verschwenden.

Die Lösung wäre hier ein „Schneid-Klemm"-Kabel, aber leider scheint es keine 19poligen Schneid-Klemm-Steckverbinder zu geben. Dem kann man folgendermaßen abhelfen: Man nehme zwei 25polige Sub-D-Schneid-Klemm-Steckverbinder und entferne jeweils die Pins 1 bis 3 und 14 bis 16. Dies ist bei vielen nur zusammengesteckten und eingerasteten Steckern mit etwas Geschick problemlos möglich. Die durch die Entfernung der Pins geschaffene Aussparung ist groß genug, um mit dem Gewinde zur Aufnahme der Zugentlastungsschraube keine Probleme zu bekommen. Insgesamt erlaubt dies, die Kabellänge auf unter 10 cm zu verringern und soden problematischen DMA-Bus zu entlasten.

K. Opel

Papierkorb umbenennen

Ich habe mich immer darüber geärgert, daß man den Namen des Papierkorbs im Desktop nicht ändern kann (bei meinem 520-ST geht es auf jeden Fall nicht). Ein anderer Name wäre doch mal ganz lustig!? Daher habe ich ein Programm geschrieben, das dies ermöglicht.

Ich will kurz erklären, wie das Programm im einzelnen vorgeht: Zuerst gibt man den momentanen Namen ein (zum Abbruch „ENDE“ eingeben). Der Computer sucht dann in der Datei DESKTOP.INF diesen Namen. Ist er vorhanden, fragt er nach dem neuen Namen.

Die Variable „plus$“ enthält soviele Leerzeichen, wie nötig sind, um den alten Namen zu überschreiben. An die Stelle des alten Namens setzt der Computer einfach den neuen ein - plus die Leerzeichen. Dann wird die Datei neu erstellt Sie brauchen Ihren Rechner nicht neu zu starten. Das Einbinden direkt ins Desktop übernimmt die Funktion SHEL_PUT( ).

A. Hitzschke

' Papierkorbnamensänderer
' (c)1992 by MAXON-Computer
' Autors Andre Hitzschke
' in : GFA-BASIC v3.00
PRINT "Ein Programm zum Ändern des"
PRINT "Papierkorbnamens."
PRINT "von Andre Hitzschke"
PRINT
PRINT "wie lautet der momentane" 
INPUT "Name";alt$
PRINT
PRINT
alt$=TRIM$(alt$)
IF UPPER$(altS)="ENDE"
    EDIT 
ENDIF
OPEN "I",#1,"\DESKTOP.INF" 
desk$=INPUT$(LOF(#1),#1)
CLOSE #1
at%=INSTR(desk$,alt$)
IF at%=0
    PRINT "So heißt er aber nicht..." 
    PRINT "<Taste>"
    ~INP(2)
    RUN
ENDIF
PRINT "und wie soll er denn jetzt"
PRINT "heißen? ";
FORM INPUT 12,neu$
PRINT
PRINT
neu$=TRIM$(neu$)
IF neu$=alt$
    PRINT "so heißt er doch schon..." 
    PRINT "<Taste>"
    ~INP(3)
    RUN
ENDIF
IF LEN(alt$)>LEN(neu$)
    plus$=SPACE$(LEN(alt$)-LEN(neu$))
ELSE
    plus$=""
ENDIF
mid$(desks,at%)=neu$+"- -"+plus$
PRINT "moment bitte... ";
BSAVE "\DESKTOP.INF",V:desk$,LEN(desk$)
PRINT "fertig!!"
~SHEL_PUT(LEN(desk$),desk$)
~INP(2)
RUN

HBS-Beschleuniger

Gerne beziehe ich mich auf einen Test in der ST-COMPUTER, Heft 3/92, Seite 24, wo der Autor dem HBS-240 von Heyer & Neumann eine stabile Arbeitsweise bescheinigte. Nach dem Einbau dieses Boards konnte ich auf meinem MEGA ST-4 fast nicht mehr vernünftig arbeiten. Nach ca. 1/2 Stunde Betriebsdauer stürzte der Rechner immer wieder ab (evtl. Wärmeproblem?). Besonders ärgerlich waren die Abstürze während eines Schreibzugriffs auf die Festplatte. Auch Abschalten des Caches und ein Rückfahren der ROM-Zugriffe auf 3 Waitstates brachten keine Besserung. Die ungewöhnliche Einbauweise (kopfstehend) läßt die Abwärme unter der Platine stauen. Durch Anblasen mit einem Fön konnte ich den Fehler leicht reproduzieren. Wahrscheinlich tritt aber der Fehler nicht bei allen Rechnermodellen auf.

Hier nun die Lösung: Ich habe einen 100-pF-Kondensator zwischen Pin 15 der HBS-Stift-leiste (8-MHz-Clock) und Masse eingelötet. Die dadurch hervorgerufene Verzögerung des Taktsignals vom Rechner bewirkt offenbar eine bessere Synchronisation im Timing zwischen Rechnerbus und HBS. Der Fön-Test brachte keinen Fehler mehr hervor.

H. Emmerl

Eigenschaften der MEGA-STE-Video-Hardware

Inspiriert durch den Großbildschirm-Emulator in der Ausgabe 1/92 der ST-Computer habe ich ebenfalls ein derartiges Programm geschrieben, das allerdings auch horizontales Finescrolling unterstützt. Im Laufe dieser Entwicklungen, bei denen mehrfach Probleme mit der Hardware auftraten, entstand schließlich eine lauffähige Version. die auf folgenden Eigenschaften der Video-Hardware des Mega STE basiert:

D.h.: man muß die neuen Registerwerte im VBL berechnen, das DBASE-Register noch im selben VBL setzen, das LINE-WID- und das HSCROLL-Register aber erst im NÄCHSTEN VBL-Interrupt! Man beachte, daß ich auf diese Weise ohne den Timer-B-Interrupt auskomme, entgegen der im Profibuch beschriebenen ATARI-Empfehlung. Interessenten können meinen virtuellen Großbildschirm inklusive CPX-Modul zum Konfigurieren bei mir erhalten, wenn sie mir eine Diskette mit frankiertem Rückumschlag zusenden.

Jörg Zettel



Aus: ST-Computer 01 / 1993, Seite 108

Links

Copyright-Bestimmungen: siehe Über diese Seite