AREA |SWI$$Code|, CODE, READONLY, PIC sp RN 13 lr RN 14 pc RN 15 GET hdr.apcs EXPORT xspch_ready[LEAF] xspch_ready STMFD R13!,{LR} MOV R12,R0 SWI &62B80 Return ,,VS TEQS R12,#0 STRNE R0,[R12] MOV R0,#0 Return EXPORT datavox_read_address[LEAF] datavox_read_address SWI &44388 MOV R0,R1 Return ,LinkNotStacked ; ; font_apply_fields is broken as of Font Manager 3.36 - it corrupts R5-R7 ; OSLib doesn't know this. ; EXPORT font_apply_fields[LEAF] font_apply_fields STMFD R13!,{R5-R7} SWI &400A7 MOV R0,R3 LDMFD R13!,{R5-R7} Return ,LinkNotStacked EXPORT xfont_apply_fields[LEAF] xfont_apply_fields STMFD R13!,{R5-R7} MOV R12,R14 SWI &600A7 BVS %FT01 LDR R14,[R13,#12] TEQ R14,#0 STRNE R3,[R14] MOV R0,#0 01 LDMFD R13!,{R5-R7} [ {CONFIG}=26 MOVS PC,R12 | MOV PC,R12 ] EXPORT serviceinternational_alphabet_mapping serviceinternational_alphabet_mapping STR R4,[R13,#-4]! MOV R12,R1 MOV R1,#&43 MOV R2,#8 MOV R3,R0 SWI &30 TEQ R12,#0 STRNE R4,[R12] LDR R4,[R13],#4 MOV R0,R1 Return ,LinkNotStacked EXPORT xqtmload_memory EXPORT xqtmload_file xqtmload_memory xqtmload_file SWI &67E40 MOVVC R0,#0 [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT qtm_stereo[LEAF] qtm_stereo SWI &47E4D MOV R0,R1 [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT qtm_play_raw_sample[LEAF] qtm_play_raw_sample STMFD R13!,{R4-R6} ADD R12,R13,#12 LDMIA R12,{R4-R6} SWI &47E57 LDMFD R13!,{R4-R6} [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT qtm_register_sample[LEAF] qtm_register_sample STMFD R13!,{R4-R6} ADD R12,R13,#12 LDMIA R12,{R4-R6} SWI &47E5A LDMFD R13!,{R4-R6} [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT qtm_sound_control[LEAF] qtm_sound_control SWI &47E58 LDR R12,[R13] TEQ R3,#0 STRNE R1,[R3] TEQ R12,#0 STRNE R2,[R12] [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT qtm_music_options[LEAF] qtm_music_options MOV R12,R2 STR R3,[R13,#-4]! SWI &47E5E LDR R0,[R13],#4 TEQ R12,#0 STRNE R1,[R12] TEQ R0,#0 STRNE R3,[R0] MOV R0,R2 [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT qtm_music_interrupt[LEAF] qtm_music_interrupt SWI &47E5F MOV R0,R1 TEQS R3,#0 STRNE R2,[R3] [ {CONFIG}=26 MOVS PC,R14 | MOV PC,R14 ] EXPORT music_interrupt_start EXPORT music_interrupt_end music_interrupt_start count DCD 0 TEQ R0,#0 MOVNE PC,R14 STR R14,[R13,#-4]! LDR R14,count ADD R14,R14,#1 STR R14,count LDR PC,[R13],#4 music_interrupt_end [ {FALSE} IMPORT |Stub$$Data$$Base| EXPORT heap_used heap_used LDR a1, =|Stub$$Data$$Base| LDR a2, [a1, #&6D4] ; userHeap LDR a3, [a1, #&6D0] ; totalFree SUB a1, a2, a3 MOV PC,R14 EXPORT heap_low heap_low LDR a1, =|Stub$$Data$$Base| LDR a1, [a1, #&6BC] MOV PC,R14 EXPORT heap_high heap_high LDR a1, =|Stub$$Data$$Base| LDR a1, [a1, #&6C0] MOV PC,R14 ] END