6c6 TITLE Mod_Vekt.ASM ;==== Programmet laddar 0000:03d0 med koden f”r IRET (CF) ;==== D„refter laddas vektorn f”r INT 1Ch om fr†n default-v„rdet ;==== F000:FF53 till 0000:03D0 via INT 21h/25h ;==== OBS Innan anropet m†ste DS:DX inneh†lla nya SEGMENT-OFFSET- ;==== adressen ;---------------------------------------------------------------------- CSEG SEGMENT ASSUME CS:CSEG, DS:CSEG ORG 100H Start: jmp begin ;---------------------------------------------------------------------- ;===== Koden f”r IRET skrives in p† adress 0000:03d0 Skriv_IRET PROC NEAR push es mov ax,0000h ;Peka p† segment 0000 mov es,ax mov bx,03d0h ;Peka p† Offset 03d0 mov al,0cfh ;Skriv kod f”r IRET mov es:[bx],al ;Verkst„ll pop es ret Skriv_IRET ENDP ;---------------------------------------------------------------------- ;==== Ladda om vektorn att peka till 0000:03d0 New_Vector PROC NEAR push ds mov ax,0000h mov ds,ax ;New Segment -> DS mov dx,03d0h ;Mew Offset -> DX mov al,1ch ;Int 1ch mov ah,25h ;Skriv ny int 21h pop ds ret New_Vector ENDP ;===================================================================== Begin: call Skriv_IRET call New_Vector ret ;---------------------------------------------------------------------- CSEG ENDS END Start ;----------------------------------------------------------------------- . 0