DEUTSCHE VERSION |
|
Links | | | Forums | | | Comments | | | Report news |
Chat | | | Polls | | | Newsticker | | | Archive |
amiga-news.de Forum > Search | [ - Search - New posts - Register - Login - ] |
|
||||||
Ralf27
User
2008-03-29, 10:15 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Achja, wieso ich ein Amiga einsetzen möchte: Ist ein Hobbyprojekt. Man könnte natürlich auch ein Profisystem kaufen, allerdings wird das wohl auch etwas kosten, bzw. wäre wohl dann doch eine weitere Biegemaschine fällig und die sind nicht gerade günstig... -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-29, 10:11 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Zitat:Das Problem ist, das die Maschine eigentlich eine Schwenkbiegemaschine ist. Das bedeutet, das Blech wird eingelegt, durch die beiden erwähnten Zylinder festgehalten (die fahren einfach nur zu bis ca. 150Tonnen Haltedruck erreicht sind). Wenn der Drucksensor anzeigt das das Belch fest genug gehalten wird, dann werden die beiden Hauptzylinder gestartet und der Biegeprozess geht los indem einfach vor dem Blech eine langsam sich drehende Biegevorrichtung sich halt eben dreht bis der gewünschte Winkel erreicht ist. Das ganze System ist halt für extrem Dicke und lange Bleche ausgelegt und dauert deswegen auch recht lang und ist auch nicht gerade präzise. Eine andere Art der Biegemaschinen geht einfach so, das einfach das Blech in eine Art Prisma gelegt wird und von oben kommt so eine Art Messer runter das das Blech ins Prisma drückt. Dafür reichen wohl maximal 50 Tonnen Druck aus. Dieses Prisma und Messer ist halt eigentlich im Original nicht vorhanden und stammt von einer anderen Biegemschine, die wir nicht haben und die wohl auf dem Schrott liegt. Zitat:Das ist das eine Problem mit der Erfassung. Das andere liegt darin, das der Biegevorgang sich je nach dicke des Bleches, Winkel, Prismen, Radius, ... ändert und das muß(oder solte) halt Visual angezeigt, bzw. auch eingegeben werden. Deswegen der Amiga. Zitat:Die Originalmaschien arbeitet in zwei Takten, einmal festhalten und dann mit zwei weiteren Zylindern mit drehen. Nach der Erweiterung sollte es dann nur noch mit dem drücken in ein Prisma laufen. Das ganze ist ein einfacher umbau, bzw. wird das Prisma und das Messer einfach nur angeschraubt, mehr nicht. Es kann also jederzeit wieder umgebaut werden. Zitat:Die Maschine hat so ein Sensor und der ist wirklich sehr genau, zehntel genau. Zitat:Eiin Teil dieser Steuerung ist ja schon im Original vorhanden. Mann kann ein Sollwert eingeben und die Maschine fährt bis zu den Sollwert und wieder zurück (Haltautomatik). Aber das ganze nur mit denn zwei Takten (Halten und drehen). Kurz nochmal zusammengefasst: Es gibt einige Arten ein Blech zu biegen. Und die vorhandene Maschine ist für schon relativ extreme Dimensionen gedacht. Die haben wir uns ja auch nur zugelegt da sie schon recht alt ist und damit auch noch einigermaßen bezahlbar ist. Aber wer alte deutsche Maschinen kennt dem dürfte klar sein, das diese deutlich robuster sind als heutige Maschinen. Das drüfte eigentlich fast jedem Handwerker bekannt sein, der schon mit ältern Maschinen geschaft hat und sich dann mit heutigen Geräten beschäftigen darf(es gibt bestimmt auch Ausnahmen, aber die dürften seltener sein...). -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-29, 08:26 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Ich bin schon überrascht wie schnell sich der Thread hier entwickelt. Nochmal wegen der Steuerung mit dem Amiga: Die Reglung mit dem Amiga kommt zu der schon vorhandenen Regelung. Die Maschine fährt jetzt auch nur über Totman-Schaltung, was ich auch beibehalten werde. Das "einzige" was der Amiga machen würde, ist einfach denn Hubvorgang vorher abzuschalten, bevor es die ursprüngliche Steuerung es machen würde. Also, wenn mal der Amiga spinnen würde, dann wäre wohl im Extremfall (wenn die entsprechende Person die die Maschine steuert auch gerade "schläft") nur das zu kantende Blech Schrott, mehr aber nicht. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-26, 21:23 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Zitat:Es sind zwei Zylinder die gleichzeitig, aber leider nicht gleichmäßig drücken(sind beide miteinander verbunden, aber nuja...) Zitat:Moment, bist du dir da sicher? Wenn ich 8 bit habe, dann hab ich 256 Möglichkeiten. Ich glaube kaum das die Digitalwander so mies sind und 8->8 wandeln. Ich kann mir auch vorstellen das es da unterschiedliche Techniken gibt wie z.b. Pulstechnik oder dergleichen. Wie schon getippt, ist für mich quasi Neuland. Zitat:Verständlich. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-25, 13:06 h [ - Direct link - ] |
topic: Kreis Zeichnen ohne graphics.library
Board: Programmierung @MaikG: Hm, du hast mir damals selbst ein Beispielcode für MaxonBasic gegeben die das Problem das du hast löst, deswegen bin ich gerade etwas ratlos bei dem Penproblem das du gerade hast Allerdings muß man erst wissen was du genau vor hast, denn es gibt einige Möglichkeiten ins Ziel. Z.b. wenn du nur 8Bit brauchst und willst in der Bitmap machen was du willst, dann leg doch einfach eine 8bit-bitmap an, zeichne in der so rum wie du willst und dann kopierst du die mit den cybergraphics-befehlen in die 16/24bit-Bitmap, wohin auch immer. Natürlich sollte man dann noch vor dem Blit eine Farbtabelle anlegen, damit cybergraphics auch die richtigen Farben nimmt. So ähnlich geh ich auch in BMP-Reader vor. Aber ich würde dir schon raten mit der Bitmap gleich einen Rastport zu generieren, das ganze zu koppeln und schon gehen die meisten graphics.lib-befehle. Allerdings nur die die keine TmpRas-Struktur brauchen, was ja z.b. die Füllen-Befehle brauchen. Aber denn kann man ja auch noch ... Bzw. müßte man schon wissen was du da genau vor hast, es gibt viele verschiedene Lösungsmöglichkeiten von dennen einige besser sind, andere schlechter. Es kommt auf das Problem an, das man hat. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-24, 18:08 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Zitat:Ist gibt bis jetzt weder das eine noch das andere. Bis jetzt drückt man nur einen Taster und das Teil fährt runter bis der Druckschalter abschaltet, das wars. Zitat:Nun, ich seh mindestens 8 Ausgänge, wenn ich den PAR-Port seh. Die Eingänge können via SER-Port laufen. Zitat:Das einzige was passieren kann, ist das das Blech dann Schrott ist. Zitat:Die Sicherheitseinrichtung bleiben natürlich vorhanden, logisch. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-24, 14:25 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung @FischX: Das ist nicht so einfach, denn die Maschine muß dann je nach Blech, Winkel, Materialstärke, ... anderst fahren. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-24, 11:57 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Zitat:Das ist es ja, gar nicht. Es gab nur ein Endschalter für die maximale Höhe und ein Druckschalter für das Abschalten des Haltevorganges. Es gibt kein Ausgleichen zwischen denn beiden Zylindern, was ja auch bei der eigentlichen aufgabe der Schwenkbiege nicht erforderlich ist. Zitat:Je nachdem was drin liegt auf der ganzen länge. Je genauer umso besser. Ich vermute mal das ein zehntel aber ausreichen müßte. Das war wir mit der Maschine vorhaben ist ja eigentlich nicht so vorgesehn und dazu ist die Maschine auch zu Kraftvoll. Dadurch das die Pumpe nur durch ein 16kw-Motor angetrieben wird, ist der Hub auch recht langsam. Ich hab die Zeit jetzt nicht gestoppt, aber es dauert sehr lange bis der volle Hub absolviert ist. Im Normalfall fährt man auch nur ca. 10-20mm hoch und selbst das dauert einige Sekunden(Schätz mal ca. 3 Sekunden, müßte es aber mal messen). -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-24, 10:18 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Ich hab hier noch ein par-Relaiskarte, aber die wollte ich nicht nehmen. Ich dachte da eventuell an eine ser-Relaiskarte für den Ausgang. Das Problem ist mehr der Eingang. Ich kenn mich da jetzt gar nicht aus. Wie geh ich vor wenn ich ein Zylinder habe der ca. einen Hub von 500 mm hat und ich will da jetzt auf ein zehntel genau wissen wo der steht? Was gibt es da alles? Läuft das digtal oder analog ab? Das gleiche gilt für das Ventil das dann wohl auch stufenlos fahren muß und mindestens 250bar aushalten muß(die Maschine wurde aufgerüstet, bzw. ist jetzt mehr Druck drauf wegen der Edelstahlverarbeitung und die Maschine wiegt jetzt leer(bzw. auch ohne Anbauten) ca. 16 Tonnen) Das große Problem ist halt jetzt, das ich da quasi bei Null steh und erst mal sehn muß wie ich das ganze quasi zusammen bekomme. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-24, 09:49 h [ - Direct link - ] |
topic: Regeltechnik mit dem Amiga
Board: Programmierung Vielleicht passt das hier nicht so ganz zum Programmiererforum, aber etwas programmieren ist auch vorhanden. Ich möchte eine Schwenkbiegemaschine steuern, die vermutlich bald etwas erweitert wird (wir spielen hier mit dem Gedanken). Dazu müßen die Hubzylinder gesteuert werden. Sowas hab ich aber noch nie in dieser Dimension gemacht, bzw. muß ich immer wissen wo die Zylinder stehn und muß denn Druck regulieren können, mehr eigentlich nicht. Wie geh ich da am besten vor? Wer hat mit sowas Erfahrung, vorallem Hardwaremäßig? Die Software müßte ich auch selbst zusammen bekommen. Das ganze hab ich mit einem A1200 oder gar einem A500 vor. Am besten wäre wohl der A1200 mit TFT und externer Tastatur. Bin aber für weitere Vorschläge offen. PS: Die Maschine ist schon etwas größer: Die kantet Edelstahlbleche bis t=10mm auf 3000mm länge. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-23, 20:13 h [ - Direct link - ] |
topic: vlab: Geschwindigkeit
Board: Programmierung Ich habe es eben mit VLab_Monitor() getestet, aber leider scheint es nicht zu laufen. Ich hab alle Parameter so übergeben wie es in der Guide steht(so hoffe ich ): code:suc=VLab_Monitor(mem&,0,0,160,140,0,VMMODE_RETINA_24) Die Daten in mem& verändern sich auch nicht, egal wie ich die Kamera bewege. Ich bekomme überhaupt nur Datenmüll, der aber gleichbleiben ist. Hat jemand diesen Befehl schonmal zum laufen bewegen können? -- http://www.alternativercomputerclub.de.vu [ Dieser Beitrag wurde von Ralf27 am 23.03.2008 um 20:14 Uhr geändert. ] |
|||||
Ralf27
User
2008-03-23, 17:24 h [ - Direct link - ] |
topic: Kreis Zeichnen ohne graphics.library
Board: Programmierung code:pi=3.14 x=100 y=100 r=10 FOR w=-pi TO pi STEP .1 x1=x+SIN(w)*r y1=y+COS(w)*r PSET(x1,y1) NEXT So könnte man ein Kreis mit PSET zeichen. Dabei kann man noch einiges verbessern(hab ich jetzt eben mal auf die schnelle geschrieben). Jetzt einfach PSET durch WritePixel ersetzen und fertig. Allerdings... es gibt ein Befehl in der graphics.library ( DrawEllipse() ). Es wäre wohl besser wenn man diesen benutzen würde: code:rem DrawEllipse( rp, cx, cy, a, b ) DrawEllipse WINDOW(8),100,100,10,10 Wieso eigentlich ohne graphics.lib? -- http://www.alternativercomputerclub.de.vu [ Dieser Beitrag wurde von Ralf27 am 23.03.2008 um 17:30 Uhr geändert. ] [ Dieser Beitrag wurde von Ralf27 am 23.03.2008 um 17:31 Uhr geändert. ] |
|||||
Ralf27
User
2008-03-21, 14:20 h [ - Direct link - ] |
topic: Interneteinwahl mit Modem und uralt PC
Board: Andere Systeme Gegeben: Laptop: P1-60Mhz, 16MB, Win98SE Modem: 56k Zur Zeit ist SmartSurfer drauf, aber leider ist es so, das wenn Smartsurfer sogar alleine läuft die GUI vom Smartsurfer unglaublich langsam ist. Mir ist schon klar das der Rechner total veraltet ist. Aber ich würde zu gerne wissen ob es für diesen alten Rechner ein schnelleres Einwahlprogramm gibt, das automatisch denn günstigsten Anbieter anwählt und das nicht gleich denn ganzen Rechner für sich verbraucht. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-18, 21:58 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Hab eine neue Version hochgeladen, die diesmal auch einen stärkeren Solver hat. Diesmal ist das Programm im Archiv aktueller als die Testversion. Bitte testet es bitte nochmal. Ich hoffe, das diesmal der Fehler drausen ist. EDIT: War wohl wieder nix, es läuft einfach nicht auf allen Rechnern... [ Dieser Beitrag wurde von Ralf27 am 18.03.2008 um 22:09 Uhr geändert. ] |
|||||
Ralf27
User
2008-03-17, 08:08 h [ - Direct link - ] |
topic: APlus-Angebot im IPoint auf Raststätte
Board: Get a Life Es war wohl in Pforzheim. Hab mich vertan, bzw. war ich wohl hinten im Bus nicht mehr so ganz "da". Also, wenn jemand in die Raststätte in Pforzheim kennt bzw. zufällig daran vorbeifährt... reinschauen und staunen. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-14, 22:12 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Hab denn Solver jetzt soweit das er auch ohne Brutalo das obrige Spielfeld errechnet. Wird doch! -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-14, 19:58 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Zitat: Danke, freut mich zu lesen das es jetzt läuft. Dann hast du wohl gerade die aktuelle Version runtergeladen. Diese hat auch schon eine weitere Verstärkung des Solvers erfahren. Die Spielfelder können also jetzt bei "Hardcore" noch schwerer werden. Edit: Gern geschehn mit dem Pfeilsupport. Ist wirklich besser. Aber es gibt da noch viele Möglichkeiten, z.b. bei Gamepads(die jetzt auch unterstüzt werden (CD32-Gamepads). Aber da kann man noch einige Konfigurieren. Ich sollte wirklich endlich mal eine Konfig-GUI basteln, denn so langsam würde es das Menu sprengen. -- http://www.alternativercomputerclub.de.vu [ Dieser Beitrag wurde von Ralf27 am 14.03.2008 um 20:00 Uhr geändert. ] |
|||||
Ralf27
User
2008-03-14, 19:52 h [ - Direct link - ] |
topic: Eigene IP ermitteln?
Board: Programmierung Leuts, bleibt einfach mal locker. Denn ich hab das Gefühl das es hier langsam etwas derb wird (obwohl ich hier einige schon verstehn kann). Jeder hat seine Macken. Einfach drauf hinweisen und gut ist. Aber was hier teilweise abläuft ist schon irgendwie ne Gaudi, das kann ich aber auch nicht von der Hand weisen. Also, locker bleiben. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-14, 19:48 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Zitat: Hm, dann ist dein Katalog veraltet. Mit Optionen laden/speichern kann man die aktuellen Einstellung laden oder diese eben speichern. Freut mich das die aktuelle Version bei dir ohne Probleme läuft. Ich bin gerade auch dabei ein BrutalForce-Lösealgo ins Programm einzubauen, wenn er mal nicht mit denn mir bekannten Regeln ein Spielfeld lösen kann. Ich hoffe, das er dann auch wirklich alle knacken kann. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-13, 20:25 h [ - Direct link - ] |
topic: Merkelsoft in der Schule
Board: Get a Life Ist schon interesant zu sehn wie die Leute (eigentlich unmerklich von den ensprechenden Personen) an eine Firma gebunden werden. So auf die Art, es gibt nix anderes und das ist das ein und alles. Klar, ich stimme demm schon zu das man das kennen sollte, aber die Leute werden wirklich auf eine Firma "eingeschworen"... -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-13, 20:22 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Ich hab mich mal jetzt intensiver um Lösungsmöglichkeiten im Internet schlau gemacht und was soll ich tippen, es gibt da richtig viele Möglichkeiten und teilweise wirklich mathematisch recht "intensiv". Vermutlich werd ich nicht alle einbauen können(ganz bestimmt sogar nicht, wie z.b. goldene Kette...), aber ich kann ja eine Brutal-Force-Routine einbauen die einfach stur versucht denn Rest komplett durchzurechnen um an eine Lösung zu kommen. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-11, 21:10 h [ - Direct link - ] |
topic: APlus-Angebot im IPoint auf Raststätte
Board: Get a Life Wenn es so einfach wäre. Ich bin nicht gefahren. Wir sind von Stuttgart aus Richtung Frankfurt gefahren. Irgendwo so kurz nach Karlsruhe muß die Raststätte sein. Dort war auch ein BurgerKing drin, aber der war leider zu. Außerdem standen viele Fahrzeuge gegen die Fahrtrichtung auf dem Rastplatz, das hab ich irgendwie noch in Erinnerung. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-11, 20:58 h [ - Direct link - ] |
topic: Maskengenerierung
Board: Programmierung Ist schon ne harte Nuss. Es bugt als noch. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-10, 21:13 h [ - Direct link - ] |
topic: APlus-Angebot im IPoint auf Raststätte
Board: Get a Life Zja, ich war schon überrascht, als ich auf der Rückfahrt von Stuttgart auf einer Raststätte(leider weiß ich nicht mehr wo genau) auf einem Rechner in der Raststätte im vorinstallierten Webangebot die APlus(Link, mit Bild) gesehn habe. Man konnte dort nur Surfen wenn man vorher bezahlt, klar. War schon interesant. Heute ist das ja ganz und gar nicht "normal". Mist, wenn ich nur wüßte wo ich da gerade war... -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-10, 18:57 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Zitat:Nur hier im Thread und im irc von amiganews.de Zitat:Ich hab eben ein Hinweis bekommen zu FreeBitmap(), das davor noch ein WaitBlit() gehört. Ich hoffe, das es das war. Hab eine neue Debug-Version online gestellt. http://home.pages.at/a1260/WBSudoku1.5.0.testversion (nur in Verbindung mit dem Hauptarchiv) -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-10, 18:55 h [ - Direct link - ] |
topic: Maskengenerierung
Board: Programmierung Zitat: Das war mir neu, danke. Hab mir diesbezüglich auch nochmal die Autodocs durchgelesen. Muß das wohl übersehn haben. Hab eben eine neue Debug-Version online gestellt. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-09, 23:04 h [ - Direct link - ] |
topic: Maskengenerierung
Board: Programmierung Hier nochmal der Codeteil mit etwas Debugcode, der Probleme macht: code:SUB ZeigeGFX(BYVAL n) SHARED tagsl&,scr&,scrbitmap& SHARED BitMapBild&,rp&,Mask& SHARED fx1,fx2,fy1,fy2 SHARED TotalRefresh SHARED xStart,yStart SHARED Var$ STATIC Fehler,x,y,x1,y1,x2,y2,b,h,junk STATIC bild&,obitmapbild&,oBreite&,oHoehe& STATIC bitmapMask&,a& kprintf"Starte ExtraGFX" IF TotalRefresh=n THEN EXIT SUB:REM Wird schon angezeigt Fehler=0 IF GFX$(n,1)="" OR opt(14)=0 THEN PlaySound n:EXIT SUB IF GFX(n,0) x1=GFX(n,0):y1=GFX(n,1):x2=GFX(n,2):y2=GFX(n,3) b=x2-x1:IF b>fx2-fx1 THEN b=fx2-fx1 h=y2-y1:IF h>fy2-fy1 THEN h=fy2-fy1 BltMaskBitMapRastport BitMapBild&,x1,y1,rp&,xStart+(fx2-fx1-b)2,yStart+(fy2-fy1-h)2,b,h,&He0,Mask& ELSE kprintf"Starte Subroutine GenMask" bitmapMask&=0 GenMask GFX$(n,1),bitmapMask& kprintf"bitmapmask in ZeigeGFX="+HEX$(bitmapmask&) IF bitmapMask& kprintf"GetBitMapAttr()" IF GetBitMapAttr&(scrbitmap&,BMA_FLAGS&) AND BMF_STANDARD& THEN a&=FALSE& ELSE a&=TRUE& TAGLIST tagsl&, _ DTA_GroupID&, GID_PICTURE&, _ PDTA_FreeSourceBitMap&, TRUE&, _ PDTA_DestMode&, PMODE42&, _ PDTA_UseFriendBitMap&, a&, _ PDTA_Remap&, TRUE&, _ PDTA_Screen&, scr&, _ TAG_END& kprintf"NewDTObjectA()" bild&=NewDTObjectA&(SADD(GFX$(n,1)+CHR$(0)),tagsl&) IF bild& TAGLIST tagsl&, _ DTM_PROCLAYOUT&, 0, TRUE&, _ TAG_END& kprintf"DoDTMethodA()" IF DoDTMethodA&(bild&,0,0,tagsl&) obitmapBild&=0 oBreite&=0 oHoehe&=0 TAGLIST tagsl&, _ PDTA_DestBitMap&, VARPTR(obitmapBild&), _ DTA_NominalHoriz&, VARPTR(oBreite&), _ DTA_NominalVert&, VARPTR(oHoehe&), _ TAG_END& kprintf"GetDTAttrsA()" IF GetDTAttrsA(bild&,tagsl&)<>3 Fehler=Fehler_Grafikrunterrechnen ELSE b=oBreite&:IF b>fx2-fx1 THEN b=fx2-fx1 h=oHoehe&:IF h>fy2-fy1 THEN h=fy2-fy1 kprintf"BltMaskBitMapRastPort()" BltMaskBitMapRastPort obitmapBild&,(oBreite&-b)2,(oHoehe&-h)2,rp&,xStart+(fx2-fx1-b)2,yStart+(fy2-fy1-h)2,b,h,&He0,PEEKL(BitmapMask&+8) END IF ELSE Fehler=Fehler_Grafikrunterrechnen END IF kprintf"DisposeDTObject()" DisposeDTObject bild& ELSE Var$=GFX$(n,1) Fehler=Fehler_Grafikladen END IF kprintf"FreeBitmap bitmapmask (wird von GenMask generiert, aber in GenMask nicht geschlossen)" kprintf"bitmapmask&="+HEX$(bitmapmask&) FreeBitMap bitmapMask& END IF IF Fehler THEN LocMeldung Fehler:EXIT SUB END IF PlaySound n TotalRefresh=n kprintf"Ende ExtraGFX" END SUB SUB GenMask(BYVAL a$,bitmapMask&) SHARED tagsl&,Fehler,var$ STATIC t&,bild&,Fehler,Farbtiefe STATIC obitmapBild&,oBreite&,oHoehe&,bitmaptmp& STATIC bb&,buf&,rp1&,rp2&,p&,b,h,f,junk IF Fehler THEN EXIT SUB bitmapMask&=0 kprintf"Starte GenMask" TAGLIST tagsl&, _ DTA_GroupID&, GID_PICTURE&, _ PDTA_FreeSourceBitMap&, TRUE&, _ TAG_END& kprintf"NewDTObjectA()" bild&=NewDTObjectA&(SADD(a$+CHR$(0)),tagsl&) IF bild& TAGLIST tagsl&, _ DTM_PROCLAYOUT&, 0, TRUE&, _ TAG_END& kprintf"DoDTMethodA()" IF DoDTMethodA&(bild&,0,0,tagsl&) obitmapBild&=0 oBreite&=0 oHoehe&=0 kprintf"GetDTAttrsA()" TAGLIST tagsl&, _ PDTA_DestBitMap&, VARPTR(obitmapBild&), _ DTA_NominalHoriz&, VARPTR(oBreite&), _ DTA_NominalVert&, VARPTR(oHoehe&), _ TAG_END& IF GetDTAttrsA(bild&,tagsl&)<>3 Fehler=FehlerInit_Maske ELSE kprintf"obitmapBild="+HEX$(obitmapBild&)+" Addresse:"+HEX$(VARPTR(obitmapBild&)) kprintf"oBreite="+HEX$(oBreite&)+" Addresse:"+HEX$(VARPTR(oBreite&)) kprintf"oHoehe="+HEX$(oHoehe&)+" Addresse:"+HEX$(VARPTR(oHoehe&)) kprintf"bitmapMask=AllocBitmap()" bitmapMask&=AllocBitMap&(oBreite&,oHoehe&,1,0,0) IF bitmapMask&=0 Fehler=FehlerInit_Maske ELSE kprintf"Farbtiefe=GetBitMapAttr()" Farbtiefe=GetBitMapAttr&(obitmapBild&,BMA_DEPTH&) IF Farbtiefe=0 OR Farbtiefe>8 Fehler=FehlerInit_Masketiefe2 ELSE REM Maske selbst generieren bb&=16*((oBreite&+15)16) kprintf"buf=AllocVec()" buf&=AllocVec&(201&+bb&*oHoehe&,MEMF_PUBLIC&+MEMF_CLEAR&) IF buf& kprintf"bitmaptmp=AllocBitMap()" bitmaptmp&=AllocBitMap&(oBreite&,1,Farbtiefe,0,0) IF bitmaptmp& rp1&=buf& rp2&=buf&+100 kprintf"InitRastport rp1" InitRastPort rp1& POKEL rp1&+RastPortBitMap%,obitmapBild& kprintf"InitRastport rp2" InitRastPort rp2& POKEL rp2&+RastPortBitMap%,bitmaptmp& p&=buf&+200 kprintf"ReadPixelArray8()" junk=ReadPixelArray8(rp1&,0,0,oBreite&-1,oHoehe&-1,p&,rp2&) f=PEEK(p&):REM Die Farbnummer vom ersten Pixel oben links (0,0) FOR t&=p& TO p&+bb&*oHoehe& POKE t&,-(PEEK(t&)<>f) NEXT POKEL rp1&+RastPortBitMap%,bitmapMask& kprintf"WritePixelArray8()" junk=WritePixelArray8(rp1&,0,0,oBreite&-1,oHoehe&-1,p&,rp2&) kprintf"FreeBitMap bitmaptmp" FreeBitMap bitmaptmp& END IF kprintf"FreeVec buf" FreeVec buf& END IF END IF END IF END IF ELSE Fehler=Fehler_Grafikrunterrechnen END IF kprintf"DisposeDTObject bild" DisposeDTObject bild& ELSE Var$=a$ Fehler=Fehler_Grafikladen END IF kprintf"Ende GenMask, bitmapmask="+HEX$(bitmapmask&) END SUB Debugversion: http://home.pages.at/a1260/WBSudoku1.5.0.testversion Läuft nur in Verbindung mit dem komplett Archiv. Also Archiv runterladen, Debugversion ins Verzeichniss kopieren und starten. -- http://www.alternativercomputerclub.de.vu [ Dieser Beitrag wurde von Ralf27 am 09.03.2008 um 23:42 Uhr geändert. ] |
|||||
Ralf27
User
2008-03-09, 22:32 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Zitat: Das ist es ja, ich kann leider auch keine Fehler finden, aber es sind welche drin. Denn leider wirft das Programm einige Hits unter OS4 und MorphOS, aber nicht auf jedem System. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-09, 15:36 h [ - Direct link - ] |
topic: Maskengenerierung
Board: Programmierung Mit WriteChunkyPixel() läuft es leider auch nicht. -- http://www.alternativercomputerclub.de.vu |
|||||
Ralf27
User
2008-03-09, 15:35 h [ - Direct link - ] |
topic: WBSudoku
Board: Amiga, AmigaOS 4 Die aktuelle Testversion läuft leider auch nicht. -- http://www.alternativercomputerclub.de.vu |
|||||
|
Masthead |
Privacy policy |
Netiquette |
Advertising |
Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved. |