cba54b205b
- refactor code for transfer buffer reads/writes, real mode int 0x21 calls, and assembler segment declarations - define transfer buffer size in one place - beef up error checking for transfer buffer operations (prevent buffer overflows) - also optimize such operations to transfer dword by dword where feasible
29 lines
343 B
ArmAsm
29 lines
343 B
ArmAsm
#
|
|
! $Source$
|
|
! $State$
|
|
! $Revision$
|
|
|
|
#include "libsysasm.h"
|
|
|
|
! Create or truncate a file.
|
|
|
|
.define __sys_rawcreat
|
|
__sys_rawcreat:
|
|
! Copy filename to transfer buffer.
|
|
|
|
mov eax, 4(esp)
|
|
call .sys_scpyout
|
|
jc 9f
|
|
|
|
! Make the DOS call.
|
|
|
|
xchg edx, eax
|
|
movb ah, 0x3c
|
|
movb al, 8(esp)
|
|
call .sys_dpmidos
|
|
|
|
jmp .sys_axret
|
|
|
|
9:
|
|
jmp .sys_toolongret
|