summaryrefslogtreecommitdiff
path: root/frontends/calculator/CEdev/lib/fileio/fwrite.src
blob: 7432016a4490472009a37701ffbbe62c4bf68fe1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
; Zilog eZ80 ANSI C Compiler Release 3.4
; -optsize -nomodsect -peephole -globalopt -localcse
; -const=ROM 
	FILE	"..\FWRITE.C"
	.assume ADL=1
	SEGMENT CODE
;    1	#include <stdio.h>
;    2	#include <fileioc.h>
;    3	
;    4	size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream) {
_fwrite:
	CALL	__frameset0
;    5	    return ti_Write(ptr, size, count, stream->slot);
	LD	IY,(IX+15)
	LD	C,(IY+0)
	LD	B,0
	PUSH	BC
	LD	BC,(IX+12)
	PUSH	BC
	LD	BC,(IX+9)
	PUSH	BC
	LD	BC,(IX+6)
	PUSH	BC
	CALL	_ti_Write
	POP	BC
	POP	BC
	POP	BC
	POP	BC
;    6	}
	LD	SP,IX
	POP	IX
	RET	


;**************************** _fwrite ***************************
;Name                         Addr/Register   Size   Type
;_ti_Write                           IMPORT  -----   function
;stream                               IX+15      3   parameter
;count                                IX+12      3   parameter
;size                                  IX+9      3   parameter
;ptr                                   IX+6      3   parameter


; Stack Frame Size: 18 (bytes)
;       Spill Code: 0 (instruction)


	XREF _ti_Write:ROM
	XREF __frameset0:ROM
	XDEF _fwrite
	END