amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Suche [ - Suche - Neue Beiträge - Registrieren - Login - ]

Erste << 17 18 19 20 21 -22- 23 24 25 26 27 >> Letzte Ergebnisse der Suche: 8116 Treffer (30 pro Seite)
Holger   Nutzer

02.04.2012, 18:57 Uhr

[ - Direktlink - ]
Thema: Intervallgrenzen
Brett: Programmierung

Das ist leider zu abstrakt.
Was passiert denn, wenn der nicht nachdenken wollende Mensch erwartungsgemäß einfach Intervallbeginn und Fixpunkt zusammen auf den heutigen Tag legt? Bricht dann alles zusammen, sprich, ist es unumgänglich, dass der Benutzer die Bedeutung von Intervall und Fixpunkt versteht, oder kann man den Weg des geringsten Widerstands gehen und für das, was der faule Nutzer eh tun wird, eine Abkürzung einbauen?
Und wenn 90% der Nutzer eh den einfachen Weg gehen, lohnt sich dann der Einbau der „Power-User“ Funktion mit unterschiedlichen Intervallstart und Fixpunkt überhaupt noch? Oder bringt sie dann eh nichts mehr?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

02.04.2012, 13:55 Uhr

[ - Direktlink - ]
Thema: Intervallgrenzen
Brett: Programmierung

Zitat:
Original von DrNOP:
Die einzige Lösung die ich bisher hatte wäre - um beim Kalender zu bleiben:

Fixpunkt: Mittwoch
frühestes Datum: 16. November

Das ist doch schon extrem kompakt, eine Datumsangabe und ein Fixpunkt aus einer Auswahl von maximal sieben Werten. Sehr viel kompakter könnte es doch selbst dann nicht werden, wenn es eine algorithmische Lösung für Deine ursprüngliche Anfrage gegeben hätte.
Zitat:
Ich befinde mich mit diesem Problem nicht auf einer grafischen Benutzeroberfläche, sondern in einem embedded System mit speziellem Bedienteil.
Na also, geht doch.
Wahrscheinlich könnte man selbst für das „embedded System mit speziellem Bedienteil“ Eingabemöglichkeiten tunen, andererseits klingt es ja so, als ob das gar nicht nötig wäre…

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

30.03.2012, 15:03 Uhr

[ - Direktlink - ]
Thema: Intervallgrenzen
Brett: Programmierung

Zitat:
Original von DrNOP:
Das Prinzip ist mir leider vorgegeben. Ich war nur auf der Suche, um notwendige Benutzereingaben minimieren zu können.

Je nach Anwendungsfall lässt sich ja durchaus eine elegante Eingabemöglichkeit für die Kombination aus Intervall und im Intervall gelegenem Fixpunkt designen…

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

30.03.2012, 10:09 Uhr

[ - Direktlink - ]
Thema: Intervallgrenzen
Brett: Programmierung

Vielleicht würden sich ja elegantere Lösungen finden lassen, wenn man mehr über den „höheren Zweck“ wüsste?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

29.03.2012, 11:16 Uhr

[ - Direktlink - ]
Thema: Intervallgrenzen
Brett: Programmierung

Das ist jetzt ein bisschen konfus. Redest Du jetzt von einer normalen Woche, also Mo-So, dann verstehe ich Deine Frage nicht (wieso sollte die Woche dann plötzlich an einem Mittwoch beginnen). Oder redest Du von einer Woche im Sinne eines beliebigen 7-Tage-Intervalls? Dann würde ich Deine Frage ebenfalls nicht verstehen, denn woher soll man wissen, wo ein beliebiges 7-Tage-Intervall beginnt, wenn derjenige, der es festlegt, es einem nicht sagt?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

16.03.2012, 18:01 Uhr

[ - Direktlink - ]
Thema: Bounding Box eines Layers
Brett: Programmierung

Zitat:
Original von Der_Wanderer:
Wenn ich alles richtig verstehe, ist die Bounding Box der Damage Region eine Über-Fläche der Bounding Box innerhalb von Begin/EndRefresh. Insofern kann ich nichts verpassen, höchstens etwas zu viel zeichnen.

Nein, worum es mir in meinem Kommentar ging (lies den verlinkten Thread), ist, dass Tests ergeben haben, dass zumindest unter AOS3 die Damage-Region nicht in die ClipRegion geschrieben wird.

Das heißt, solange Du Dich zwischen BeginRefresh und EndRefresh befindest, werden zwar effektiv Damage-Region und ClipRegion AND-verknüpft, um den beschreibbaren Bereich zu definieren, aber das Ergebnis der Verknüpfung steht nicht in der ClipRegion. Dort steht ausschließlich der User-defined Clip, also Deiner (default null).

Wenn Du also die Bounds der Damage-Region wissen willst, musst Du auch die Damage-Region auslesen. Im Clip stehen die nicht. Wenn Du einen nicht-null Clip hast, musst Du dessen BoundingBox ebenfalls überprüfen und beide manuell verknüpfen.

Zitat:
Also InstallClipRegion gibt die alte Region zurück. Die kann man dann später wieder herstellen, und danach die eigene freigeben.
Ja, aber sie ist per default null, wenn Du nicht selber eine gesetzt hast. Das müsste Dir an der Stelle aufgefallen sein, wo Du sie manipulieren willst. Oder genau das ist das Problem: Du überprüfst nicht auf null, bevor Du sie mit einer weiteren Region verknüpfst. Dann knallts.

Zitat:
Zitat:
Benutzt Du mehrere Tasks? Ein Minenfeld…
Jain. Zumindest will ich es mir nicht verbauen.
Es hat seinen Grund, warum die meisten Toolkits darum einen Bogen machen. Ein korrektes Protokoll wer wann wohin zeichnen darf, ist schwer zu implementieren und man gewinnt nichts. Die Grafik-Hardware/Pipeline bearbeitet die Zeichenbefehle trotzdem sequentiell.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

16.03.2012, 16:44 Uhr

[ - Direktlink - ]
Thema: Up'n'Down-Voting von Kommentaren
Brett: Forum und Interna

Ich halte es nicht für sinnvoll Meinungen zu bewerten und leider tendieren die meisten Menschen dazu, Meinung und Qualität eines Kommentars zu verwechseln oder in einen Topf zu schmeißen. Außerdem hatten wir das Thema schonmal: wir wollen keine Wettbewerbe um den negativsten Kommentar provozieren.

Deshalb wiederhole ich auch gerne mein Voting von damals: eine reine Positiv-Skala, mit der man gute Beiträge hervorheben kann, während für Trollbeiträge genauso wie uninteressante Beiträge nur ignorieren möglich ist (was auch heute schon möglich ist, auch wenn das gerne vergessen wird) erscheint mir die eleganteste Lösung zu sein.

Oder man erlaubt auch Negativ-Votings, zeigt deren Resultat aber nicht an. Optisch unterscheiden sich negativ bewertete Kommentare dann nicht von Kommentaren ohne jede Bewertung, außer dass sie bei Unterschreiten einer bestimmten (nicht genannten) Schwelle per default ausgeblendet werden.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

16.03.2012, 16:32 Uhr

[ - Direktlink - ]
Thema: Bounding Box eines Layers
Brett: Programmierung

Zitat:
Original von Der_Wanderer:
Theoretisch kannst du dann auch NOCAREREFRESH nutzen, dein Fenster ist ja dann maximal für einen Frame "damaged".

Sofern man ständig neu malt, ja. Wenn man nicht den gesamten Bereich neu zeichnet, kann man auch NOCAREREFRESH benutzen, solange man sicherstellt, dass immer Updates stattfinden und dass sowohl die veralteten als auch die beschädigten Bereiche neu gezeichnet werden.

Zitat:
Wobei im Falle eines BeginRefresh/EndRefreh kann ich mir die Bounding Box auch so besorgen, oder?
Äh, ja. Wobei Du das „auch“ streichen kannst. Die Bounding Box der Damage-Region ist nicht die Bounding Box der Clip-Region (siehe unten).

Zitat:

Ich denke mal das liegt daran, dass ich in _ntui_Redraw{} selbst die ClipRegion manipuliere.

Nein, daran kann es nicht liegen. Und zwar aus folgendem Grund:

http://amiga-news.de/forum/thread.php?id=33602&start=91&BoardID=7#350915

Offenbar ist Reths Thread doch ganz interessant.

Zitat:
Ich stelle zwar fein säuberlich sicher, dass beim Verlassen von _ntui_Redraw{} die alte ClipRegion wiederhergestellt ist, aber vermutlich darf ich erst gar keine neue setzen weil die Layer (oder LayerInfo) gelockt sind?
Das ist nicht das Problem. Die Frage ist vielmehr: wo kommt die alte Clip-Region überhaupt her?

Zitat:
Der Grund warum ich Obtain und Release mache ist, dass der User garantiert bekommt, dass ihm der RastPort in der Zwischenzeit nicht weggenommen wird und ihm auch niemand anderes (z.B. NTUI) reinmalt.
Benutzt Du mehrere Tasks? Ein Minenfeld…

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

16.03.2012, 11:20 Uhr

[ - Direktlink - ]
Thema: Die Lügenbande, Teil zwo ! ;-)
Brett: Get a Life

Zitat:
Original von Bjoern:
Eventuell wollten sie nochmal Profil zeigen und nicht nur den Mitläufer geben, …

Etwas ähnliches dachte ich auch: weg sind sie nach der nächsten Wahl sowieso, also schön, dass sie hier nicht den Wulf gemacht haben, sondern sich direkt bei einer für sie nicht tragbaren Sache verabschieden. Dass der Haushalt wahrscheinlich nach der Wahl exakt so verabschiedet wird, steht auf einem anderen Blatt.
Zitat:
…um damit bei der Neuwahl über die 5% zu kommen.
Nanana, das werden sie nun hoffentlich nicht wirklich geglaubt haben.

Sieh es eher so: die DDR-Regierung ist damals auch zurückgetreten, als sie eingesehen hat, dass sie keiner mehr haben wollte, Chance zur Wiederwahl gleich null.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

16.03.2012, 11:13 Uhr

[ - Direktlink - ]
Thema: Bounding Box eines Layers
Brett: Programmierung

Zitat:
Original von Reth:
Nur das hier die "Beschädigung" nicht durch drüberliegende Fenster kommt, sondern durch übereinanderliegende grafische Objekte des Spieles selbst. Da ich diese selbst manipuliere und dann blitte klappt das auch nicht so mit den von Intuition geschickten Refresh-Meldungen.

Und das ist natürlich ein gewaltiger Unterschied.

Deshalb spricht man in Deinem Fall i.A. nicht von „beschädigtem“, sondern von „veraltetem“ Inhalt.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

15.03.2012, 15:43 Uhr

[ - Direktlink - ]
Thema: Bounding Box eines Layers
Brett: Programmierung

Zitat:
Original von Der_Wanderer:
Meine Befürchtung ist nur, dass evtl. unter neueren AmigaOS Varianten die Strukturen nicht aufgebaut werden, wenn z.B. die ClipRegion eine Maske ist und keine Ansammlung von Rechtecken.

Dann sollte es aber auch keine ClipRegion-Struktur geben, die zu der Annahme verführt, man könne die Bounds auslesen. Also, entweder null oder gültige Bounds.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.03.2012, 18:26 Uhr

[ - Direktlink - ]
Thema: Bounding Box eines Layers
Brett: Programmierung

@Der_Wanderer:
Das, was Du da machst, ist der einzige mir bekannte Weg. Und wenn Du Dich zwischen BeginRefresh und EndRefresh befindest, sind die Layer auch gelockt, ich sehe also keinerlei Legalitätsprobleme.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

09.03.2012, 10:31 Uhr

[ - Direktlink - ]
Thema: AES Verschlüsselung
Brett: Get a Life

Zitat:
Original von Bjoern:
Was hilft das allerdings, wenn man nur ein 4-Stelliges Passwort verwendet? Mittels Brute-Force müsste der Container doch schnell zu entschlüsseln sein oder? Auf welche Passwortlänge beziehen sich die zehn bzw. 3 Millionen Jahre?

Wie schon geschrieben, bezieht sich die Schlüssellänge nicht auf die Passwortlänge.

Wenn der Angreifer weiß, dass es sich bei der Datei um ein TrueCrypt-Volume handelt, wird er natürlich nicht versuchen, den AES-Schlüssel zu knacken, sondern wird sich auf das Knacken Deines Passworts konzentrieren. Das ist auch nicht so einfach, allerdings sind vierstellige Passwörter in der Tat nicht empfehlenswert.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

08.03.2012, 11:02 Uhr

[ - Direktlink - ]
Thema: AES Verschlüsselung
Brett: Get a Life

Zitat:
Original von Bogomil76:
grob gesagt, wird aus dem was Du eingibst, und einem angeblich zufällig erzeugten Schlüssel, in dem Moment des Starts der Verschlüsselung, der Schlüssel erzeugt... ;)

Nicht ganz, der Schlüssel hat mit dem Passwort überhaupt nichts zu tun.

Der Schlüssel ist komplett zufällig und wird mit dem „gesalzenem“ Passwort verschlüsselt abgelegt.

Deshalb kannst Du das Passwort auch im Nachhinein ändern, ohne das gesamte Laufwerk neu zu verschlüsseln.

--
Good coders do not comment. What was hard to write should be hard to read too.

[ Dieser Beitrag wurde von Holger am 08.03.2012 um 11:05 Uhr geändert. ]
 
Holger   Nutzer

08.03.2012, 10:54 Uhr

[ - Direktlink - ]
Thema: Die Lügenbande, Teil zwo ! ;-)
Brett: Get a Life

Zitat:
Original von Maja:
Anscheinend werden nur FDPler überprüft... :O

Ich wusste gar nicht, dass Guttenberg und die Stoiber-Familie der FDP zuzurechnen sind.

Abgesehen davon werden bei VroniPlag überhaupt keine Partei-Zugehörigkeiten aufgeführt und bei etlichen der dort untersuchten Doktorarbeiten müsstest Du schon ganz schön suchen, um die Parteizugehörigkeit des Autors zu ermitteln.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

29.02.2012, 18:56 Uhr

[ - Direktlink - ]
Thema: Steuerung zwischen GUI und "Ausführern"?
Brett: Programmierung

Zitat:
Original von Reth:
Und wie würdest Du hier die Konstellation sowie das Ein- und Austragen aller Beteiligten sehen? So wie ich Deinen Text verstehe erhält das Gebäude verschiedene Aktionen, die ausgewählt werden können (meine Design-Frage dazu wäre: Wie und von wem?).

Moment, das war Deine Vorgabe: zuerst wählt der Benutzer die Aktion, z.B. via Button, dann wählt er den Ort oder das Zielobjekt.

Ich würde eher ein Menü bevorzugen, das sich bei der Auswahl eines Objektes öffnet, weil man dann mehr Platz für das Spielfeld hat.
Zitat:
Diese Aktionen warten dann u.U. auf das nötige Ereignis (z.b. Gebäude selektiert; meine Design-Frage hierzu: Wie und durch wen kommt diese Ereignisinformation?).
Das Low-Level-Event geht an das Objekt, das in diesen Einheiten arbeitet, das Mausklick-Event also beispielsweise an das Spielfeld, welches die Pixelkoordinaten verarbeiten kann und daraus ein High-Level-Event wie „(leeres) Feld selektiert“, „Einheit selektiert“ oder „Gebäude selektiert“ generieren und versenden kann.

Wenn man die Komponenten besser trennen will, bietet sich eine Event-Bus Architektur an. Das heißt, es gibt genau ein zentrales Objekt, das für die Vermittlung von Events zuständig ist. Empfänger melden sich bei diesem an und Versender laden bei ihm ihre Events ab. Der Event-Bus sorgt dann dafür, dass alle für diesen Event-Typ (ID, Name, whatever) registrierten Empfänger das Event erhalten.

Vorteil: die Empfänger müssen die Quelle nicht kennen, um sich zu registrieren und die Zuständigkeiten können auch viel leichter geändert werden.

Zitat:
Meine derzeitigen Bestrebungen sind eher noch sehr Low-Level orientiert, in dem ich versuche, mir Klassen und Methoden für z.B. Menü-, Maus und Gadgethandling zu bauen, die ich auch in anderen Programmen wieder verwenden kann…
Das ist ok, aber diese Low-Level-Dinge sollten letztendlich auch bei den Low-Level-Objekten bleiben. Die Anwendungslogik sollte davon nicht beeinflusst werden.

Wiederverwendung ist ja an sich ein gutes Ziel, nützt nur gar nichts, wenn man es nicht schafft, überhaupt einen Anwendungsfall zu implementieren. Dann sollte man aufhören, auf hypothetische Wiederverwendung Rücksicht zu nehmen und anfangen, ganz pragmatisch nur für die eine aktuelle Anwendung zu entwickeln. Hinterher kann man immer noch gucken, was man für spätere Anwendungen ausschlachten kann.

Zitat:
Die Cursorklasse nutze ich aktuell nur, um die Koordinatenberechnung zu machen, die in Abhängigkeit von unterschiedlichen Cursoranimationen unterschiedlich ausfällt. Die dafür benötigten weiteren Klassen möchte ich nicht in der Schnittstelle von Animationsobjekten sehen, da sie diese für ihre Aufgaben nicht benötigen. Sie wollen nur die Koordinaten wissen, an denen sie angezeigt werden sollen.
Daher kommt mir die Nutzung des Cursors als Context für Animationen an dieser Stelle merkwürdig vor (vor dem Hintergrund meiner bisherigen Source-Konstellation). Da versteh ich gerad nicht, wie das tun sollte.

Denke abstrakt. Die Animationen kennen einfach ein Objekt, das ihnen ihre Koordinaten liefert. Mehr nicht. Dieser Koordinaten-Lieferant kann ein ganz triviales Objekt mit fixen Koordinaten sein, aber auch ein Gadget, das immer Koordinaten relativ zur eigenen Position liefert, oder auch ein Cursor.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

27.02.2012, 23:00 Uhr

[ - Direktlink - ]
Thema: Steuerung zwischen GUI und "Ausführern"?
Brett: Programmierung

Zitat:
Original von Reth:
Bei solchen Events bleibt mir aber der Zshg. zur Folgeaktion unklar.

Was kann ein „linker Mausknopf gedrückt“-Event an dieser Stelle mehr leisten als ein „Feld(20, 15, Gras) selektiert“?

Zitat:
Dabei reicht es ja nicht zu sagen: Gebäude selektiert, sondern es muss ja auch eine bestimmte Aktion auf dem Gebäudeobjekt ausgeführt werden.
Wir drehen uns im Kreis. Es gibt genau eine aktuell gewählte Gebäude-Aktion und diese sollte der Empfänger des nächsten „Gebäude selektiert“ Events sein. Nach dem Empfang des Events trägt sie sich aus.

Zitat:
Dazu kann die Cursorklasse an- und ausgeschaltet werden (da die Animation nicht immer sichtbar sein soll, z.B. wenn wieder abgewählt oder Aktion durchgeführt wurde). Das sind alles Methoden, die auf das Animationsobjekt durchgereicht werden!
Was heißt „durchreichen“ in diesem Zusammenhang? Besitzt die Animationsklasse bereits die Fähigkeit zum Ein- und Ausschalten? Wenn nicht, ist es kein Durchreichen, wenn doch, wozu dann überhaupt die Cursor-Klasse?

Zitat:
Bei anderen Aktionen reicht es nur die aktuellen Mauskoordinaten durch.
Warum muss es das tun? Animationen existieren doch nicht im luftleeren Raum. Sie besitzen doch immer einen Kontext oder Parent o.ä., egal, ob das nun ein Fenster, eine Zielbitmap oder ein Cursor ist. Der Knackpunkt liegt doch nur darin, diesen Teil des Animationsmechanismus so allgemein zu halten, dass der Cursor als möglicher Kontext der Animation kein Spezialfall mehr ist.

Zitat:
Das gefällt mir überhaupt noch nicht, da ich noch nicht genau weiss, wie ich die Spielabläufe wie: Button gedrückt => Animation anzeigen => Spielfeld/Gebäude geklickt => Aktion beim Spieler ausführen und dabei andere Animation abspielen!
Du musst erst mal gedanklich die Ablauf-Logik in eine Zustandslogik überführen. Ganz allgemein gesprochen sind Abläufe Zustandswechel und somit gibt es vor und nach jedem der Schritte Deines Ablaufs einen Zustand, den Du komplett beschreiben kannst. Bzw. können musst. Dann kannst Du hingehen und die Objekte schaffen, die die möglichen Zustände repräsentieren.

Wenn die klar sind, ergibt sich der Rest von selbst. Andererseits sind wir damit so weit wie zu Beginn des Threads. Verlierst Du Dich vielleicht zu sehr in Details oder liegt da irgendwo noch eine andere Schwierigkeit, die Du nur nicht ausreichend erklären kannst?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

27.02.2012, 20:51 Uhr

[ - Direktlink - ]
Thema: Wie recoverable alert unter AOS4.1 debuggen?
Brett: Programmierung

@Thore:
So einfach ist das nicht. Die Speicherfreigabe kann Teil einer beliebigen anderen Ressourcefreigabe sein, sofern die jeweilige Bibliotheksfunktion nicht auf doppelte Freigaben prüft.

Außerdem sagt die Tatsache, dass eine Variable null oder nicht null ist, überhaupt nichts darüber aus, ob der zugehörige Speicherbereich freigegeben wurde. Man kann die Adresse eines Speicherbereichs nämlich auch in mehr als nur einer Variablen halten. Das ist bei nicht-trivialen Programmen sogar sehr häufig der Fall.

Will man dagegen auf Fehlersuche gehen, ist es wesentlich sinnvoller, während der Debugging-Phase die free-Funktion selber zu ersetzen, statt um jeden einzelnen Aufruf code drumherum zu schreiben.

PS: if(!(myvar==NULL)) ist grausam. Das schreibt man entweder als if(myvar!=NULL) oder, da es sich um C handelt als if(myvar)

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

23.02.2012, 13:48 Uhr

[ - Direktlink - ]
Thema: Steuerung zwischen GUI und "Ausführern"?
Brett: Programmierung

Zitat:
Original von Reth:
Eine Idee, die mir hierzu kam wäre es, solchen Objekten eine Schnittstelle zu verpassen und ihnen immer alle LMB-Ereignisse (um beim Bsp. zu bleiben) mitzugeben. Die Objekte müssten dann selbst wissen, ob sie was zu tun haben oder nicht. Was haltet ihr davon?

LMB klingt für mich nach viel zu „low-level“. Worum es doch eher geht, sind Events wie „Spielfeld selektiert“ (die Konvertierung von Mauskoordinaten in Spielfeld hat das Karten-Objekt bereits durchgeführt) oder „Gebäude/Einheit selektiert“…
Zitat:
So weit so gut. Großer Nachteil: Die Cursorklasse muss nun alle notwendigen Methoden der Animationsklasse ebenfalls nach außen legen, damit z.B. das Un-/Sichtbarschalten und das Umschalten der verschiedenen Animationen erfolgen kann.
Durchreichen von x Methoden, die man auch immer noch an jede Erweiterung anpassen muss, ist kontraproduktiv. Warum musst Du sie denn überhaupt durchreichen, statt einfach einen Direktzugriff auf das Animationsobjekt zuzulassen? Ich vermute mal, es fehlt Dir ein Mechanismus, mit dem das Cursor-Objekt erfahren kann, dass sich das Animationsobjekt verändert hat. Konzentriere Dich auf dieses eigentliche Problem, und Du sparst Dir die Arbeit mit den Cursor-Methoden. Weiterer Vorteil: anderen Klassen kann es egal sein, ob die Animation, mit der sie interagieren, am Cursor klebt, auf dem Spielfeld abläuft oder in einem Gadget stattfindet.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

20.02.2012, 11:24 Uhr

[ - Direktlink - ]
Thema: Wie recoverable alert unter AOS4.1 debuggen?
Brett: Programmierung

@Reth:
Da empfiehlt es sich, beim Logging grundsätzlich den Zeitpunkt mit auszugeben. Das ist bei gepufferter Ausgabe ohnehin unerlässlich, wenn Du die Programmereignisse mit anderen Ereignissen wie dem Alert abgleichen willst.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

19.02.2012, 22:32 Uhr

[ - Direktlink - ]
Thema: Wie recoverable alert unter AOS4.1 debuggen?
Brett: Programmierung

Das versteh ich nicht. Wieso helfen Dir Log-Ausgaben nicht weiter? Musst Du sie exakt in dem Augenblick lesen, wenn der Alert auf dem Bildschirm ist? Warum nicht einfach dann lesen, wenn der Alert weg ist?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

16.02.2012, 16:04 Uhr

[ - Direktlink - ]
Thema: AmigaOne X1000 im Vergleich zu anderer PPC-Hardware
Brett: Amiga, AmigaOS 4

Zitat:
Original von Andreas:
Was ist, wenn "die meisten" einfach keinen Bock mehr auf dieses Gejammere nach X86 haben?

Die meisten haben in der Tat keinen Bock darauf. Deshalb haben die meisten den Amiga-Markt inzwischen komplett verlassen.

Zitat:
Ja, PPC ist tot, hat mir letzte Woche ein Freescale FAE gesagt, Freescales Power Architecture aber gar nicht.
Es interessiert doch keine Sau, ob irgendein Power-basiertes Produkt irgendwo auf der Welt erfolgreich ist. Worum es in dieser Diskussion geht, ist die Frage, ob es die Besitzer einer Amiga-Namenslizenz schaffen können, ein Gerät mit einem, sagen wir mal nicht ganz so grottigen Preis/Leistungsverhältnis, auf den Markt zu bringen, ob nun mit Power oder ohne.
Zitat:
Ich denke, X1000 mit aktueller X86 Stangenhardware zu vergleichen, ist nicht zielführend.
Zuallererst wurde er mit anderer Amiga-PPC Hardware, dann mit PPC-Stangenhardware und erst zuletzt mit x86 Stangenhardware verglichen.
Zitat:
Der ist für das Hobby Amiga ausreichend schnell…
Wer bestimmt das? Du? Und woher kommt überhaupt das Gerücht, das Hobby Amiga habe zwangsläufig etwas mit Genügsamkeit bezüglich der Performance zu tun?
Zitat:
… und heizt dabei auch nicht die Bude auf.
Wenn man es nur oft genug wiederholt, wird es irgendwann mal wahr, oder wie? Dummerweise besteht der X1000 zu 99% aus „Stangenhardware“, die nicht energiesparender wird, nur weil sie im X1000 steckt, RAM, Grafikkarte, Festplatte, Netzteil, alles Desktop-Komponenten. Da spart die Embedded-CPU nichts.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

15.02.2012, 10:53 Uhr

[ - Direktlink - ]
Thema: FileManager asynchrones Kopieren
Brett: Programmierung

Zitat:
Original von AGSzabo:
Doch, ist mir gekommen. Darum lockt die modifyle.library die klasse indem sie die explizit öffnet, ohne auf die instanz zu vertrauen.

Und handelt es sich bei dieser Library nun um den Kopierprozess, der herausfinden will, ob es noch einen zu aktualisierenden Browser gibt?

Ich seh bei Dir nicht mehr so ganz durch.

Wenn derjenige, der möglicherweise vorhandene Instanzen aktualisieren will, erst mal die Klasse lockt, um dann herauszufinden, ob es überhaupt Instanzen gibt, ist das Ressourcenverschwendung. Das könnte sogar bedeuten, dass eine bereits freigegebene Klasse wieder geladen wird, nur um herauszufinden, dass sie eigentlich nicht benutzt wird.
Zitat:
Das Freigeben von unbenutzen Klassen war schon seit der ersten Version unterstützt. ;)
Funktioniert nur nicht, wenn eine Library einen permanenten Lock auf die Klasse hält…

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

15.02.2012, 10:44 Uhr

[ - Direktlink - ]
Thema: HTMLView, gcc und fread, komische Dinge passieren
Brett: Programmierung

Zitat:
Original von ciVic:
Übrigens habe ich grad herausgefunden, dass Tasks (sorry, ich nannte das zuvor Threads) tatsächlich keine DOS-Aufrufe machen können:

Das ist eine völlig andere Aussage als die Behauptung, man könne nur aus einem Thread (aka Task) gleichzeitig DOS-Aufrufe machen.

Da also das Thema vorher die Gleichzeitigkeit war, hat niemand darauf geachtet, ob Du mit Thread nun Task oder Process meinst.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.02.2012, 20:08 Uhr

[ - Direktlink - ]
Thema: FileManager asynchrones Kopieren
Brett: Programmierung

Zitat:
Original von AGSzabo:
…die Möglichkeit hinzugefügt, dass eine Klasse neben dem Dispatcher auch Funktionen haben kann ... eine davon ist UpdateDir(dir). Die Klasse kennt ihre Instanzen und kann die Listen wenn sie life angezeigt werden, reloaden.

Die Idee, dass man auch eine unbenutzte Klasse aus dem Speicher entfernen könnte, ist Dir offenbar bisher nicht gekommen, oder? ;)

Dann hast Du nämlich wieder exakt dasselbe Problem.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.02.2012, 19:59 Uhr

[ - Direktlink - ]
Thema: AmigaOne X1000 im Vergleich zu anderer PPC-Hardware
Brett: Amiga, AmigaOS 4

Zitat:
Original von Maja:
OS4 basiert auf dem orginal Source von AOS3.1. IIRC bezieht sich Hyperions Lizenz am Namen Amiga auf diesen Zusammenhang.

Glaub ich kaum. In den aktuellen Sourcen dürfte nichts mehr von den originalen Sourcen stammen.
Zitat:
Aber wie steht eigentlich das AROS-Team dem Gedankengang gegenüber, sich mit Hyperion zusammenzutun? Zu einer Partnerschaft gehören schließlich min. zwei "Heiratswillige".
Sagen wir es so: die Aros-Lizenz ist so liberal, dass sie die Nutzung seitens Hyperion eh erlauben würde. Und selbst, wenn die Aros-Entwickler sich dagegen wehren würden, dass Hyperion eine Gegenleistung im Form von beigesteuerten Code (oder Namenslizenz) bringt, könnte Hyperion immer noch einen fork namens AmigaOS4 machen und diesen unter Aros-Lizenz stellen.

Selbst wenn sich dann alle Beteiligten demonstrativ um Scheuklappen bemühen würden, würde bereits ein einziger Entwickler genügen, um alle sinnvollen Änderungen zu synchronisieren (das geht mit heutigen Werkzeugen sehr komfortabel).

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.02.2012, 19:46 Uhr

[ - Direktlink - ]
Thema: FileManager asynchrones Kopieren
Brett: Programmierung

Zitat:
Original von AGSzabo:
Aber woher weiß der Prozess dass der Browser noch offen, und sein Code noch da ist?

Zum Beispiel über einen public MessagePort. Man validiert die Port-Adresse direkt bevor man die Nachricht verschickt. Ist der Port zu diesem Zeitpunkt nicht mehr in der Liste, gibt es den Empfänger offensichtlich nicht mehr.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.02.2012, 19:40 Uhr

[ - Direktlink - ]
Thema: Bedingungen im Initcode einer Library
Brett: Programmierung

Zitat:
Original von AGSzabo:
Der neue Prozess kümmert sich um das GUI. Er öffnet die oxmaster.library und erstellt eine ox-application, die für alle kommenden Requester und Fenster da ist. Es wird gewartet, bis das vollbracht ist oder failt. Erst dann geht es weiter.

Ne Menge Holz. Und damit ist es auch logisch, dass es zu einem Dead-Lock kommen kann: befindet sich unter den Libraries (bzw. Library-ähnlichen Ressourcen wie externen Gadgets), die direkt oder indirekt von Deinem neuen Prozess geöffnet werden, eine, die noch nicht im RAM liegt, wird versucht, diese über den Prozess der ramlib zu laden. Dieser befindet sich aber immer noch in Deiner LibInit-Routine, die auf das Signal wartet. Somit kann es nie zu einer Antwort kommen.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.02.2012, 10:50 Uhr

[ - Direktlink - ]
Thema: Bedingungen im Initcode einer Library
Brett: Programmierung

@AGSzabo:
Ach so. Und was genau macht Dein neu gestarteter Prozess nun?
Also, bevor er das Signal schickt, auf das Du in der Library warten willst.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.02.2012, 10:46 Uhr

[ - Direktlink - ]
Thema: Quo vadis, Amiga im Jahr 2008?
Brett: Amiga, AmigaOS 4

Zitat:
Original von eye-BORG:
Assembler-Programmierer sind die wahren Meister der Branche und gehören einer aussterbenden Spezies an. Der überwiegende Teil der heutigen Programmierer bastelt zig Layer von der Hardware entfernt am Source-Coce herum und verlässt sich auf die mehrere GHz schnelle CPU, die genug Ressourcen für jede Anwendung bietet.

Kompletter Unsinn. Es gibt einfach -zig mal mehr Programmierer als damals. Und die Low-Level-Spezialisten sind deshalb nicht weg oder weniger, sondern sitzen an den Compilern, Optimierern, virtuellen Maschinen, etc, eben damit die darauf aufbauenden Programmierer sich nicht mehr so viel Gedanken über Low-Level-Details machen müssen.
Zitat:
Man stelle sich vor, was möglich wäre, wenn jemand komplett vom OS losgelöst direkt in Assembler Programme schreiben würde, die das Potential der heutigen CPUs nutzen......
Gar nichts wäre dann möglich. Schau Dir doch einfach mal die Liste der nie vollendeten Spiele an. Und dann schau Dir mal die Liste der Spiele an, die mittels ScummVM gespielt werden können, weil sie nämlich schon damals nicht in optimiertem Assembler, sondern in einer Scriptsprache für eine virtuelle Maschine geschrieben wurden. Und hat auch schon damals keinen interessiert (weil es eh kaum einer wusste, bzw. bemerkte)

Auch heute wird noch Assembler eingesetzt. Aber nur für sorgfältig ausgewählte Bereiche.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
 
Erste << 17 18 19 20 21 -22- 23 24 25 26 27 >> Letzte Ergebnisse der Suche: 8116 Treffer (30 pro Seite)

Suchbegriffe
Schlüsselwörter      Benutzername
Suchoptionen
Nur in diesen Foren suchen
   nur ganze Wörter
Nur Titel anzeigen
alle Treffer anzeigen

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.