* arm/crt0.S: Copied from newlib and it now also sets up stacks for
        FIQ and IRQ mode, plus calls hardware_init_hook() and
        software_init_hook() if present.
        * arm/libcfunc.c, arm/swi.h, arm/syscalls.c: Copied
        from newlib.
        * arm/Makefile.in: Build crt0.o, rdpmon-crt0.o, rdimon-crt0.o,
        librdpmon.a, librdimon.a - support file for "bare" setup, as well
        as "RDP" and "RDI" monitors.
        * arm/coff-rdpmon.specs, arm/elf-rdpmon.specs,
        arm/coff-rdimon.specs, arm/elf-rdimon.specs: gcc specs files to go
        with above mentioned support libs and startfiles.
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SWI numbers for RDP (Demon) monitor.  */
 | |
| #define SWI_WriteC                 0x0
 | |
| #define SWI_Write0                 0x2
 | |
| #define SWI_ReadC                  0x4
 | |
| #define SWI_CLI                    0x5
 | |
| #define SWI_GetEnv                 0x10
 | |
| #define SWI_Exit                   0x11
 | |
| #define SWI_EnterOS                0x16
 | |
| 
 | |
| #define SWI_GetErrno               0x60
 | |
| #define SWI_Clock                  0x61
 | |
| #define SWI_Time                   0x63
 | |
| #define SWI_Remove                 0x64
 | |
| #define SWI_Rename                 0x65
 | |
| #define SWI_Open                   0x66
 | |
| 
 | |
| #define SWI_Close                  0x68
 | |
| #define SWI_Write                  0x69
 | |
| #define SWI_Read                   0x6a
 | |
| #define SWI_Seek                   0x6b
 | |
| #define SWI_Flen                   0x6c
 | |
| 
 | |
| #define SWI_IsTTY                  0x6e
 | |
| #define SWI_TmpNam                 0x6f
 | |
| #define SWI_InstallHandler         0x70
 | |
| #define SWI_GenerateError          0x71
 | |
| 
 | |
| 
 | |
| /* Now the SWI numbers and reason codes for RDI (Angel) monitors.  */
 | |
| #define AngelSWI_ARM 			0x123456
 | |
| #ifdef __thumb__
 | |
| #define AngelSWI 			0xAB
 | |
| #else
 | |
| #define AngelSWI 			AngelSWI_ARM
 | |
| #endif
 | |
| 
 | |
| /* The reason codes:  */
 | |
| #define AngelSWI_Reason_Open		0x01
 | |
| #define AngelSWI_Reason_Close		0x02
 | |
| #define AngelSWI_Reason_WriteC		0x03
 | |
| #define AngelSWI_Reason_Write0		0x04
 | |
| #define AngelSWI_Reason_Write		0x05
 | |
| #define AngelSWI_Reason_Read		0x06
 | |
| #define AngelSWI_Reason_ReadC		0x07
 | |
| #define AngelSWI_Reason_IsTTY		0x09
 | |
| #define AngelSWI_Reason_Seek		0x0A
 | |
| #define AngelSWI_Reason_FLen		0x0C
 | |
| #define AngelSWI_Reason_TmpNam		0x0D
 | |
| #define AngelSWI_Reason_Remove		0x0E
 | |
| #define AngelSWI_Reason_Rename		0x0F
 | |
| #define AngelSWI_Reason_Clock		0x10
 | |
| #define AngelSWI_Reason_Time		0x11
 | |
| #define AngelSWI_Reason_System		0x12
 | |
| #define AngelSWI_Reason_Errno		0x13
 | |
| #define AngelSWI_Reason_GetCmdLine 	0x15
 | |
| #define AngelSWI_Reason_HeapInfo 	0x16
 | |
| #define AngelSWI_Reason_EnterSVC 	0x17
 | |
| #define AngelSWI_Reason_ReportException 0x18
 | |
| #define ADP_Stopped_ApplicationExit 	((2 << 16) + 38)
 | |
| #define ADP_Stopped_RunTimeError 	((2 << 16) + 35)
 |