home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / b / baslib2 / Malloc < prev    next >
Unknown  |  1993-01-17  |  1.9 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 40 f4 20 3e 25 | 2e 42 61 73 6c 69 62 2e |...@. >%|.Baslib.|
|00000010| 4d 61 6c 6c 6f 63 20 31 | 2e 30 20 2d 20 4d 65 6d |Malloc 1|.0 - Mem|
|00000020| 6f 72 79 20 61 6c 6c 6f | 63 61 74 69 6f 6e 20 61 |ory allo|cation a|
|00000030| 6e 64 20 64 65 2d 61 6c | 6c 6f 63 61 74 69 6f 6e |nd de-al|location|
|00000040| 0d 00 14 43 2a 7c 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...C*|--|--------|
|00000050| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000060| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000070| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000080| 2d 7c 2a 0d 00 1e 2c 2a | 7c 20 28 63 29 20 43 6f |-|*...,*|| (c) Co|
|00000090| 70 79 72 69 67 68 74 20 | 31 39 39 31 2c 31 39 39 |pyright |1991,199|
|000000a0| 32 20 43 68 72 69 73 20 | 43 6f 72 62 65 74 74 0d |2 Chris |Corbett.|
|000000b0| 00 28 40 2a 7c 20 54 68 | 69 73 20 6d 6f 64 75 6c |.(@*| Th|is modul|
|000000c0| 65 20 63 6f 6e 74 61 69 | 6e 73 20 74 68 65 20 66 |e contai|ns the f|
|000000d0| 75 6e 63 74 69 6f 6e 73 | 20 46 4e 6d 61 6c 6c 6f |unctions| FNmallo|
|000000e0| 63 2c 20 46 4e 63 61 6c | 6c 6f 63 20 61 6e 64 0d |c, FNcal|loc and.|
|000000f0| 00 32 42 2a 7c 20 46 4e | 66 72 65 65 2e 20 54 68 |.2B*| FN|free. Th|
|00000100| 65 79 20 70 72 6f 76 69 | 64 65 20 65 71 75 69 76 |ey provi|de equiv|
|00000110| 61 6c 65 6e 74 20 6d 65 | 6d 6f 72 79 20 61 6c 6c |alent me|mory all|
|00000120| 6f 63 61 74 69 6f 6e 20 | 66 75 6e 63 74 69 6f 6e |ocation |function|
|00000130| 73 0d 00 3c 40 2a 7c 20 | 61 73 20 70 72 6f 76 69 |s..<@*| |as provi|
|00000140| 64 65 64 20 69 6e 20 43 | 20 6c 69 62 72 61 72 79 |ded in C| library|
|00000150| 20 65 71 75 69 76 61 6c | 65 6e 74 73 2e 20 49 6e | equival|ents. In|
|00000160| 74 65 72 6e 61 6c 6c 79 | 2c 20 4f 53 5f 48 65 61 |ternally|, OS_Hea|
|00000170| 70 0d 00 46 40 2a 7c 20 | 53 57 49 73 20 61 72 65 |p..F@*| |SWIs are|
|00000180| 20 75 73 65 64 20 77 69 | 74 68 20 74 68 65 20 68 | used wi|th the h|
|00000190| 65 61 70 20 61 6c 6c 6f | 63 61 74 65 64 20 61 62 |eap allo|cated ab|
|000001a0| 6f 76 65 20 42 41 53 49 | 43 20 70 72 6f 67 72 61 |ove BASI|C progra|
|000001b0| 6d 0d 00 50 20 2a 7c 20 | 73 70 61 63 65 20 28 69 |m..P *| |space (i|
|000001c0| 2e 65 2e 20 61 62 6f 76 | 65 20 48 49 4d 45 4d 29 |.e. abov|e HIMEM)|
|000001d0| 2e 0d 00 5a 43 2a 7c 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...ZC*|-|--------|
|000001e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000001f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000200| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000210| 2d 2d 7c 2a 0d 00 64 05 | 3a 0d 00 6e 14 dd 20 a4 |--|*..d.|:..n.. .|
|00000220| 6d 61 6c 6c 6f 63 28 73 | 69 7a 65 25 29 0d 00 78 |malloc(s|ize%)..x|
|00000230| 42 2a 7c 20 72 65 74 75 | 72 6e 20 70 6f 69 6e 74 |B*| retu|rn point|
|00000240| 65 72 20 74 6f 20 62 6c | 6f 63 6b 20 6f 66 20 73 |er to bl|ock of s|
|00000250| 69 7a 65 25 20 62 79 74 | 65 73 2c 20 67 75 61 72 |ize% byt|es, guar|
|00000260| 61 6e 74 65 65 64 20 74 | 6f 20 73 74 61 72 74 0d |anteed t|o start.|
|00000270| 00 82 44 2a 7c 20 6f 6e | 20 61 20 77 6f 72 64 20 |..D*| on| a word |
|00000280| 62 6f 75 6e 64 61 72 79 | 2e 20 55 73 65 73 20 4f |boundary|. Uses O|
|00000290| 53 5f 48 65 61 70 20 66 | 75 6e 63 74 69 6f 6e 73 |S_Heap f|unctions|
|000002a0| 20 74 6f 20 61 6c 6c 6f | 63 61 74 65 20 73 70 61 | to allo|cate spa|
|000002b0| 63 65 2e 0d 00 8c 24 20 | 20 ea 20 6d 65 6d 62 6c |ce....$ | . membl|
|000002c0| 6b 25 2c 20 70 74 72 25 | 2c 20 66 72 65 65 25 2c |k%, ptr%|, free%,|
|000002d0| 20 74 6f 74 61 6c 25 0d | 00 96 15 20 20 e7 20 73 | total%.|... . s|
|000002e0| 69 7a 65 25 3d 30 20 8c | 20 3d 2d 31 0d 00 a0 14 |ize%=0 .| =-1....|
|000002f0| 2a 7c 20 58 4f 53 5f 48 | 65 61 70 20 63 61 6c 6c |*| XOS_H|eap call|
|00000300| 0d 00 aa 28 20 20 c8 99 | 20 26 32 30 30 31 44 2c |...( ..| &2001D,|
|00000310| 31 2c 93 20 b8 20 70 74 | 72 25 2c 2c 66 72 65 65 |1,. . pt|r%,,free|
|00000320| 25 2c 74 6f 74 61 6c 25 | 0d 00 b4 13 20 20 e7 20 |%,total%|.... . |
|00000330| 70 74 72 25 20 3c 3e 20 | 31 20 8c 0d 00 be 42 2a |ptr% <> |1 ....B*|
|00000340| 7c 20 54 68 65 20 68 65 | 61 70 20 68 61 73 20 6e || The he|ap has n|
|00000350| 65 76 65 72 20 62 65 65 | 6e 20 69 6e 69 74 69 61 |ever bee|n initia|
|00000360| 6c 69 73 65 64 2c 20 28 | 26 34 30 30 45 43 3d 57 |lised, (|&400EC=W|
|00000370| 69 6d 70 5f 53 6c 6f 74 | 53 69 7a 65 29 0d 00 c8 |imp_Slot|Size)...|
|00000380| 15 20 20 20 20 f2 4d 65 | 6d 5f 61 73 73 65 6d 62 |. .Me|m_assemb|
|00000390| 6c 65 0d 00 d2 21 20 20 | 20 20 c8 99 20 26 34 30 |le...! | .. &40|
|000003a0| 30 45 43 2c 2d 31 2c 2d | 31 20 b8 20 6d 65 6d 62 |0EC,-1,-|1 . memb|
|000003b0| 6c 6b 25 0d 00 dc 2c 20 | 20 20 20 c8 99 20 26 34 |lk%..., | .. &4|
|000003c0| 30 30 45 43 2c 6d 65 6d | 62 6c 6b 25 2b 73 69 7a |00EC,mem|blk%+siz|
|000003d0| 65 25 2b 31 36 2c 2d 31 | 20 b8 20 70 74 72 25 0d |e%+16,-1| . ptr%.|
|000003e0| 00 e6 20 20 20 20 20 c8 | 99 20 26 31 44 2c 30 2c |.. .|. &1D,0,|
|000003f0| 93 2c 2c 70 74 72 25 2d | 6d 65 6d 62 6c 6b 25 0d |.,,ptr%-|memblk%.|
|00000400| 00 f0 07 20 20 cd 0d 00 | fa 17 20 20 e7 20 73 69 |... ...|.. . si|
|00000410| 7a 65 25 20 3e 20 66 72 | 65 65 25 20 8c 0d 01 04 |ze% > fr|ee% ....|
|00000420| 2c 2a 7c 20 54 68 65 72 | 65 20 69 73 20 6e 6f 74 |,*| Ther|e is not|
|00000430| 20 65 6e 6f 75 67 68 20 | 73 70 61 63 65 20 69 6e | enough |space in|
|00000440| 20 74 68 65 20 68 65 61 | 70 0d 01 0e 21 20 20 20 | the hea|p...! |
|00000450| 20 c8 99 20 26 34 30 30 | 45 43 2c 2d 31 2c 2d 31 | .. &400|EC,-1,-1|
|00000460| 20 b8 20 6d 65 6d 62 6c | 6b 25 0d 01 18 2c 20 20 | . membl|k%..., |
|00000470| 20 20 c8 99 20 26 34 30 | 30 45 43 2c 6d 65 6d 62 | .. &40|0EC,memb|
|00000480| 6c 6b 25 2b 73 69 7a 65 | 25 2b 31 36 2c 2d 31 20 |lk%+size|%+16,-1 |
|00000490| b8 20 70 74 72 25 0d 01 | 22 20 20 20 20 20 c8 99 |. ptr%..|" ..|
|000004a0| 20 26 31 44 2c 35 2c 93 | 2c 2c 70 74 72 25 2d 6d | &1D,5,.|,,ptr%-m|
|000004b0| 65 6d 62 6c 6b 25 0d 01 | 2c 07 20 20 cd 0d 01 36 |emblk%..|,. ...6|
|000004c0| 3d 2a 7c 20 54 68 69 73 | 20 69 73 20 77 68 65 72 |=*| This| is wher|
|000004d0| 65 20 77 65 20 66 69 6e | 61 6c 6c 79 20 61 6c 6c |e we fin|ally all|
|000004e0| 6f 63 61 74 65 20 74 68 | 65 20 6d 65 6d 6f 72 79 |ocate th|e memory|
|000004f0| 20 72 65 71 75 69 72 65 | 64 21 0d 01 40 27 20 20 | require|d!..@' |
|00000500| c8 99 20 26 32 30 30 31 | 44 2c 32 2c 93 2c 2c 73 |.. &2001|D,2,.,,s|
|00000510| 69 7a 65 25 20 b8 20 65 | 72 72 25 2c 2c 70 74 72 |ize% . e|rr%,,ptr|
|00000520| 25 0d 01 4a 15 20 20 e7 | 20 65 72 72 25 3c 3e 32 |%..J. .| err%<>2|
|00000530| 20 8c 20 3d 2d 31 0d 01 | 54 0a 3d 20 70 74 72 25 | . =-1..|T.= ptr%|
|00000540| 0d 01 5e 05 3a 0d 01 68 | 14 dd 20 a4 63 61 6c 6c |..^.:..h|.. .call|
|00000550| 6f 63 28 73 69 7a 65 25 | 29 0d 01 72 4a 2a 7c 20 |oc(size%|)..rJ*| |
|00000560| 61 6c 6c 6f 63 61 74 65 | 20 61 20 6d 65 6d 6f 72 |allocate| a memor|
|00000570| 79 20 62 6c 6f 63 6b 20 | 61 6e 64 20 63 6c 65 61 |y block |and clea|
|00000580| 72 20 63 6f 6e 74 65 6e | 74 73 2c 20 72 65 74 75 |r conten|ts, retu|
|00000590| 72 6e 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 62 6c |rn point|er to bl|
|000005a0| 6f 63 6b 0d 01 7c 19 20 | 20 41 25 20 3d 20 a4 6d |ock..|. | A% = .m|
|000005b0| 61 6c 6c 6f 63 28 73 69 | 7a 65 25 29 0d 01 86 12 |alloc(si|ze%)....|
|000005c0| 20 20 e7 20 41 25 3d 30 | 20 8c 20 3d 2d 31 0d 01 | . A%=0| . =-1..|
|000005d0| 90 10 20 20 42 25 20 3d | 20 73 69 7a 65 25 0d 01 |.. B% =| size%..|
|000005e0| 9a 15 20 20 42 25 20 3d | 20 ba 28 6d 65 6d 7a 65 |.. B% =| .(memze|
|000005f0| 72 6f 29 0d 01 a4 08 3d | 20 41 25 0d 01 ae 05 3a |ro)....=| A%....:|
|00000600| 0d 01 b8 11 dd 20 a4 66 | 72 65 65 28 62 6c 6b 25 |..... .f|ree(blk%|
|00000610| 29 0d 01 c2 39 2a 7c 20 | 66 72 65 65 20 73 70 61 |)...9*| |free spa|
|00000620| 63 65 20 70 72 65 76 69 | 6f 75 73 6c 79 20 72 65 |ce previ|ously re|
|00000630| 74 75 72 6e 65 64 20 62 | 79 20 6d 61 6c 6c 6f 63 |turned b|y malloc|
|00000640| 20 6f 72 20 63 61 6c 6c | 6f 63 0d 01 cc 0a ea 20 | or call|oc..... |
|00000650| 72 65 74 25 0d 01 d6 1f | 20 20 c8 99 20 26 32 30 |ret%....| .. &20|
|00000660| 30 31 44 2c 33 2c 93 2c | 62 6c 6b 25 20 b8 20 72 |01D,3,.,|blk% . r|
|00000670| 65 74 25 0d 01 e0 18 20 | 20 e7 20 72 65 74 25 20 |et%.... | . ret% |
|00000680| 3c 3e 20 33 20 8c 20 3d | 20 2d 31 0d 01 ea 07 3d |<> 3 . =| -1....=|
|00000690| 20 30 0d 01 f4 05 3a 0d | 01 fe 13 dd 20 f2 4d 65 | 0....:.|.... .Me|
|000006a0| 6d 5f 61 73 73 65 6d 62 | 6c 65 0d 02 08 35 2a 7c |m_assemb|le...5*||
|000006b0| 20 52 6f 75 74 69 6e 65 | 20 66 6f 72 20 66 61 73 | Routine| for fas|
|000006c0| 74 20 63 6c 65 61 72 69 | 6e 67 20 6f 66 20 61 20 |t cleari|ng of a |
|000006d0| 62 6c 6f 63 6b 20 6f 66 | 20 6d 65 6d 6f 72 79 0d |block of| memory.|
|000006e0| 02 12 14 20 20 de 20 6d | 65 6d 5f 63 6f 64 65 25 |... . m|em_code%|
|000006f0| 20 34 30 0d 02 1c 14 20 | 20 50 25 20 3d 20 6d 65 | 40.... | P% = me|
|00000700| 6d 5f 63 6f 64 65 25 0d | 02 26 0d 20 20 5b 20 4f |m_code%.|.&. [ O|
|00000710| 50 54 20 30 0d 02 30 0d | 20 2e 6d 65 6d 7a 65 72 |PT 0..0.| .memzer|
|00000720| 6f 0d 02 3a 10 20 20 20 | 4d 4f 56 20 52 32 2c 23 |o..:. |MOV R2,#|
|00000730| 30 0d 02 44 10 20 20 20 | 4d 4f 56 20 52 33 2c 52 |0..D. |MOV R3,R|
|00000740| 30 0d 02 4e 17 20 20 20 | 4d 4f 56 20 52 31 2c 52 |0..N. |MOV R1,R|
|00000750| 31 2c 4c 53 52 20 23 32 | 0d 02 58 0a 20 2e 6d 65 |1,LSR #2|..X. .me|
|00000760| 6d 30 0d 02 62 15 20 20 | 20 53 54 52 20 52 32 2c |m0..b. | STR R2,|
|00000770| 5b 52 33 5d 2c 23 34 0d | 02 6c 14 20 20 20 53 55 |[R3],#4.|.l. SU|
|00000780| 42 53 20 52 31 2c 52 31 | 2c 23 31 0d 02 76 0f 20 |BS R1,R1|,#1..v. |
|00000790| 20 20 42 47 54 20 6d 65 | 6d 30 0d 02 80 11 20 20 | BGT me|m0.... |
|000007a0| 20 4d 4f 56 20 50 43 2c | 52 31 34 0d 02 8a 07 20 | MOV PC,|R14.... |
|000007b0| 20 5d 0d 02 94 05 e1 0d | 02 9e 04 0d ff | ]......|..... |
+--------+-------------------------+-------------------------+--------+--------+