- zig blockierte Tracker und Werbung
- hauchdünne Fashionmagazin-Schrift
- "lustige" animierte Grafiken beim Scrollen
ich meinte des Zeug des die da präsentieren und zum Verkauf anbieten;
dass die Page Müll ist, ist ohnehin klar;
KB19 OOP im imperativen Paradigma a bissl lustig, wa
wenn ma weiß wie der C++ compiler die decorated names generiert und sich sonst auskennt und weiß was man tut,
dann kann man tatsächlich class members, operator overloading, friend functions in Assembler auslagern;
tatsächlich mit Win32/64 sind Assembler Programme eigentlich C-Programme;
.386 ; enable i386 instructions
.MODEL FLAT, STDCALL ; 32-bit FLAT model, calling convention STDCALL
STDOUTPUTHANDLE EQU -11
; function prototypes, analog C
GetStdHandle PROTO NEAR32 STDCALL, nStdHandle : DWORD
WriteFile PROTO NEAR32 STDCALL, hFile : DWORD, lpBuffer : NEAR32, nNumberOfBytesToWrite : DWORD,
lpNumberOfBytesWritten : NEAR32, lpOverlapped : NEAR32
ExitProcess PROTO NEAR32 STDCALL, dwExitCode : DWORD
.STACK 1000H ; 4 kBytes Stack
.DATA
msg BYTE 'Hello World.', 0DH, 0AH
written DWORD 00000000H
hStdOut DWORD 00000000H
.CODE
LSTART: INVOKE GetStdHandle, ; function for getting handle
STDOUTPUTHANDLE ; standard output handle
MOV hStdOut,EAX
INVOKE WriteFile, ; function for writing to file
hStdOut, ; file handle for screen
NEAR32 PTR msg, ; address of string
LENGTHOF msg, ; length of string
NEAR32 PTR written, ; address to number of bytes
0000000H ; overlapped mode
INVOKE ExitProcess, ; function for exiting process
0000000H ; exitcode to operating system
PUBLIC LSTART
END
Alles anzeigen
sprich zu DOS-Zeiten waren es Interrupts, meist INT 21h mit denen man DOS-Fkt. aufrief; bei Windows gehts direkt mit den Windows APIs;
ein C Programm hatte unter DOS natürlich sowas wie z.B. FILE* fp = fopen( ... );
wo die Laufzeitbibliothek sehr wohl dies mit INT 21h abhandelte;
aRaphael es handelt sich um ein TSR-Programm als COM-Programm, welches bei aktiviertem Numlock, an Stelle des Kommas einen Punkt liefert;
INT 09h ist der Tastaturinterrupt; 83 ist hier nicht der ASCII-code sondern der Scancode der Taste wenn mich nicht alles verlassen hat;
ja das waren schon Zeiten; bei der Graphikprogrammierung war der MCGA-Modus mit 256 Farben und einer Auflsg. von 320x200 sehr bliebt,
weil da ließ sich trivialst was basteln;
MOV AX,0013H
INT 10H
MOV AX,0A000H ; Segment vom Graphikspeicher
MOV ES,AX
SUB DI,DI
CLD
MOV CX,320*200
X:INC AL
STOSB
LOOP X
SUB AX,AX
INT 16H
MOV AX,0003H
INT 10H
MOV AX,4C00H
INT 21H
Alles anzeigen
wer errät was das Programm snippet macht