i dont see what is not cleared about the system v calling convention in the abi.pdf
it is a little tehnical, but its all there:
first you classify what your passing
args go in RCX, RDX, R8, R9
if they are floats they go into xmm registers and if floats are returned they are returned there
MEMORY types are passed thru the stack(basicaly anything too big to fit into a register)
things are returned in rax
and syscalls now use "syscall" instead of "int somehex"
theres a bit more in the A.2.1 part of the abi.pdf
oh and linux 32bit and amd64 syscalls have different arguments
here's an example of a triangle i had problems with and asked here
http://forum.nasm.us/index.php?topic=1454.0also heres some general code for filehandling under linux
;open
mov rdx, 600o
mov rsi, 0
lea rdi, [file]
mov rax, 2
syscall
mov [fd], rax
you get the file descriptor in rax
;read8
mov rdx, 8
mov rsi, buff
mov rdi, [fd]
mov rax, 0
syscall
buff is where to write sayd read thing
;print8 to stdout
mov rdx, 8
mov rsi, buff
mov rdi, 1
mov rax, 1
syscall
hope this helps a little, im still learning asm so...
i have some linux syscalls in some link somewhere (i think:)) if you need
funny thing is i have to learn to use the stack now because of strtod()