| |
|
|
Frank Abbing | Salut,
sollte qui une ou bien autre une interessanten Profan-Assembler Code écrivons, werd Je l' naturellement volontiers avec qui cela XPIA paquet aufnehmen. |
|
|
| |
|
|
|
Michael Dell | |
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 04.10.2005 ▲ |
|
|
|
|
Frank Abbing | super, Michael! dans qui MASM32.lib stecken encore chacun la quantité interessante et hilfreiche Funktionen.... |
|
|
| |
|
|
|
Frank Abbing | ici qui Aufruf zweiter Systemdialoge, Color et Font: KompilierenMarqueSéparation {$cliq}
Declare z&,bereich#,afont&
Cls
===========================
Systemdialog Color aufrufen
===========================
AsmStart SysColor
Parameters %hwnd,%hinstance
invoke ColorDialog,para1,para2,0
Return z&
AsmEnd
Print "RGB-Wert = "+Str$(z&)
==========================
Systemdialog Font aufrufen
==========================
Dim bereich#,1024
Clear bereich#
AsmStart SysFont
Parameters %hwnd,bereich#
invoke FontDialog,para1,para2,CF_SCREENFONTS or CF_EFFECTS
.if eax
invoke CreateFontIndirect,para2
.endif
Return afont&
AsmEnd
If afont&
z&=@Create("Text",%hwnd,"Eine Schriftart wurde ausgewählt.",0,24,320,64)
SetFont z&,afont&
Else
Print "Kein Font ausgewählt."
EndIf
WaitInput
Case afont&:DeleteObject afont&
../funktionsreferenzen/XProfan/end/'>Fin
|
|
|
| |
|
|
|
Michael Dell | Listet alle vorhanden fixen Laufwerke dans einer Listbox sur Motto einfacher gehts pas... KompilierenMarqueSéparation {$cliq}
Declare GD_LB&,GD_Txt&
Cls
GD_LB& = Create("SortedListBox",%HWnd,"",40,40,200,300)
GD_Txt& = Create("Text",%HWnd,"Gewählt: ",40,360,200,20)
ASMSTART GetDrives
PARAMETERS GD_LB&
Invoke load_drives, para1 ; Listet alle vorhanden "fixen" Laufwerke in einer Listbox auf
ASMEND
WhileNot ((%Key = 2) Or (%MenuItem = -2))
WaitInput
SetText GD_Txt&,("Gewählt: " + GetString$(GD_LB&,GetCurSel(GD_LB&)))
EndWhile
Fin
|
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 04.10.2005 ▲ |
|
|
|
|
Michael Dell | Dossier- Kopieren & Dossier- Anhängen
[box:057332201c]attention!!! - XPIA erzeugt seulement den Source (LAST.ASM & LAST.DEF) zum erzeugen qui DLL wird MASM32v8.2 SP2 nécessaire![/box:057332201c] KompilierenMarqueSéparation {$Clq}
Declare FC_FileIn$,FC_FileOut$,FC_Erg&,FA_FileIn$,FA_FileOut$,FA_Erg&
FC_FileIn$ = "TEST1.DAT"
FC_FileOut$ = "TEST2.DAT"
FA_FileIn$ = FC_FileIn$
FA_FileOut$ = FC_FileOut$
Cls
Print ("Kopiere " + FC_FileIn$ + " nach " + FC_FileOut$ + ". Bitte Warten...")
ASMSTART fCopy
Parameters Addr(FC_FileIn$),Addr(FC_FileOut$)
Return FC_Erg&
Local fHndl1 :DWORD
Local fHndl2 :DWORD
Local InCnt :DWORD
Local OutCnt :DWORD
Local Count :DWORD
Local GesCnt :DWORD
Local BuffAdd :DWORD
Start:
mov Count, 983040
mov BuffAdd, alloc(Count)
invoke exist, para1
jz Ende
invoke exist, para2
jz Weiter1
invoke SetFileAttributesA, para2, 32
invoke SetFileAttributesA, para2, 128
invoke DeleteFileA, para2
Weiter1:
mov GesCnt, 0
mov fHndl1, fopen(para1)
mov fHndl2, fcreate(para2)
Weiter2:
mov GesCnt, fseek(fHndl1,GesCnt,0)
fseteof fHndl2
mov InCnt, fread(fHndl1, BuffAdd, Count)
mov OutCnt, fwrite(fHndl2, BuffAdd, InCnt)
mov eax, GesCnt
add eax, InCnt
mov GesCnt, eax
mov eax, OutCnt
sub eax, Count
jz Weiter2
fclose fHndl1
fclose fHndl2
Ende:
free BuffAdd
Xor eax, eax
ASMEnd
Print
Print "Taste..."
WaitKey
Print ("Füge " + FC_FileIn$ + " zu " + FC_FileOut$ + " hinzu. Bitte Warten...")
ASMSTART fApp
Parameters Addr(FA_FileIn$),Addr(FA_FileOut$)
Return FA_Erg&
Local fHndl1 :DWORD
Local fHndl2 :DWORD
Local InCnt :DWORD
Local OutCnt :DWORD
Local Count :DWORD
Local GesCnt :DWORD
Local GesCnt2 :DWORD
Local BuffAdd :DWORD
Start:
mov Count, 983040
mov BuffAdd, alloc(Count)
invoke exist, para1
jz Ende
invoke exist, para2
jz Ende
mov GesCnt, 0
mov GesCnt2, 0
mov fHndl1, fopen(para1)
mov fHndl2, fopen(para2)
;fseteof fHndl2
mov GesCnt2, fseek(fHndl2,0,FILE_END)
Weiter2:
mov GesCnt, fseek(fHndl1,GesCnt,0)
mov GesCnt2, fseek(fHndl2,GesCnt2,0)
mov InCnt, fread(fHndl1, BuffAdd, Count)
mov OutCnt, fwrite(fHndl2, BuffAdd, InCnt)
mov eax, GesCnt
add eax, InCnt
mov GesCnt, eax
mov eax, GesCnt2
add eax, OutCnt
mov GesCnt2, eax
mov eax, OutCnt
sub eax, Count
jz Weiter2
fclose fHndl1
fclose fHndl2
Ende:
free BuffAdd
Xor eax, eax
ASMEnd
Print
Print "Taste zum Beenden..."
WaitKey
Fin
Benötigte zusätzliche Comprend (Pfade Anpassen!):[box:057332201c]include c:masm32includemsvcrt.inc include c:masm32macrosmacros.asm includelib c:masm32libmsvcrt.lib[/box:057332201c] Correction am: 11.10.05 |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 09.10.2005 ▲ |
|
|
|
|
| allô Michael, sieht oui très intéressant aus, dein letztes Beispiel. qui vorigen bestanden oui meist seulement API-Aufrufen per Makro (invoke). comment longtemps la hâte Du gebraucht, ASM soweit trop apprendre, serait mich oui auchmal ransetzen ASM trop apprendre. Bisher hab je toujours avant den ersten Erfolgen abgebrochen |
|
|
| |
|
|
|
| ASM lernt on eigendlich à einem einzigen journée.
qui wichtigsten Finessen hat on ensuite so pour einer semaine sur elle.
après feilt on seulement encore am Stil.
ASM ist absolu qui einfachste Discours - il faut arrêt seulement jongler peut.
Salve. |
|
|
| |
|
|
|
Michael Dell | Richtig,
is pas soo kompliuiert wies aussieht. mon Problem ist plutôt, pas qui souvent logischer wirkende Syntax de Hochsprachen avec qui direkteren de Assembler trop verwechseln. Am meisten lern je aus Macros et den Sourcen pour qui Libs.
ici gibts la base- Beispiele: [...]
et ici qui berühmte Interrupt- liste de Ralf Brown: [...] |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 09.10.2005 ▲ |
|
|
|
|
| @M.Dell pas encore , hab mir déjà un Assemblerbuch gekauft, cela seulement sur DOS et Interrupts eingeht. j'ai ne...aucune DOS et je voudrais seulement ASM pour 32-Bit, alors FLAT erlernen. peux qui Beispiele pour DOS oui encore pas la fois testen. Gibts den rien pour 32-Bit only. seulement ne Anleitung pour qui Adressierungsarten et qui ganzen anderen Befehle |
|
|
| |
|
|
|
Michael Wodrich | Assembler-Anleitung vom Guru Iczelion (simple googlen). voilà aussi irgendwo une Übersetzung de ihm dans allemande im Netz (ICZTUTES).
souvent aider aussi qui Assembler-Foren plus.
belle Grüße Michael Wodrich |
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 10.10.2005 ▲ |
|
|
|
|
| @TS:
32-Bit Asm heist doch eigendlich nix plus comme cela Handling de:
a) Registern b) Speicherbereichen b) Stack c) Apis
Pour qui Registermanipulation sommes Befehle comment mov add inc dec xor etc. zuständig, pour qui Manipulation de Speicherbereichen weist on zunächst qui Adresse des Mems einem Register trop et manipuliert cette anschließend sur qui [seekpos] Schreibweise, pour den Stack gibts Push & Pop, et qui Apis volonté per Call aufgerufen après que on qui paramètre dans umgekehrter Reinfolge sur den Stack emballé hat. (qui BackVal chacun Api landet dans eax].
cela wars aussi im Großen et Ganzen.
ensuite gibts naturellement encore qui Labels (pour gotos/ jmp & Compareanweisungen) et ensuite venez aussi déjà qui highlevel-Krahm. (Macros / ifs et whiles statt cmp & cmp)
là gibts nix grand trop apprendre.
Salve. |
|
|
| |
|
|