Source
...
Target
Commits (2)
/* (5.52) /* (5.53)
* *
* This file is automatically maintained by srccommit, do not edit manually. * This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1. * Last processed by srccommit version: 1.1.
* *
*/ */
#define Module_MajorVersion_CMHG 5.52 #define Module_MajorVersion_CMHG 5.53
#define Module_MinorVersion_CMHG #define Module_MinorVersion_CMHG
#define Module_Date_CMHG 22 Dec 2008 #define Module_Date_CMHG 15 Dec 2011
#define Module_MajorVersion "5.52" #define Module_MajorVersion "5.53"
#define Module_Version 552 #define Module_Version 553
#define Module_MinorVersion "" #define Module_MinorVersion ""
#define Module_Date "22 Dec 2008" #define Module_Date "15 Dec 2011"
#define Module_ApplicationDate "22-Dec-08" #define Module_ApplicationDate "15-Dec-11"
#define Module_ComponentName "Internet" #define Module_ComponentName "Internet"
#define Module_ComponentPath "mixed/RiscOS/Sources/Networking/AUN/Internet" #define Module_ComponentPath "mixed/RiscOS/Sources/Networking/AUN/Internet"
#define Module_FullVersion "5.52" #define Module_FullVersion "5.53"
#define Module_HelpVersion "5.52 (22 Dec 2008)" #define Module_HelpVersion "5.53 (15 Dec 2011)"
#define Module_LibraryVersionInfo "5:52" #define Module_LibraryVersionInfo "5:53"
...@@ -63,14 +63,7 @@ CPFLAGS = ~cfr~v ...@@ -63,14 +63,7 @@ CPFLAGS = ~cfr~v
LDFLAGS = -linkversion 514 LDFLAGS = -linkversion 514
WFLAGS = ~c~v WFLAGS = ~c~v
# include ModuleLibs
# Libraries
#
ANSILIB = CLib:o.ansilib
CLIB = CLIB:o.stubs
RLIB = RISCOSLIB:o.risc_oslib
ROMCSTUBS = RISCOSLIB:o.romcstubs
ABSSYM = RISC_OSLib:o.abssym
OBJS =\ OBJS =\
InetHdr.o\ InetHdr.o\
...@@ -141,7 +134,7 @@ all: ${TARGET} ...@@ -141,7 +134,7 @@ all: ${TARGET}
@echo ${COMPONENT}: Module built (Relocatable) @echo ${COMPONENT}: Module built (Relocatable)
${TARGET}: ${OBJS} ${CLIB} ${TARGET}: ${OBJS} ${CLIB}
${LD} ${LDFLAGS} -rmf -o $@ ${OBJS} ${CLIB} -s Syms ${LD} ${LDFLAGS} -rmf -o $@ ${OBJS} ${CLIB} ${ASMUTILS} -s Syms
${MODSQZ} $@ ${MODSQZ} $@
Access $@ WR/r Access $@ WR/r
...@@ -170,7 +163,7 @@ clean: ...@@ -170,7 +163,7 @@ clean:
@echo ${COMPONENT}: cleaned @echo ${COMPONENT}: cleaned
${ROM_MODULE}: ${OBJS} ${ROMCSTUBS} ${ROM_MODULE}: ${OBJS} ${ROMCSTUBS}
${LD} ${LDFLAGS} -o $@ -aof ${OBJS} ${ROMCSTUBS} ${LD} ${LDFLAGS} -o $@ -aof ${OBJS} ${ROMCSTUBS} ${ASMUTILS}
o.socket_swi: InetHdr.h o.socket_swi: InetHdr.h
......
...@@ -48,8 +48,6 @@ void callback_finalise(void); ...@@ -48,8 +48,6 @@ void callback_finalise(void);
void revarpintr(void); void revarpintr(void);
void callo_handler(void); void callo_handler(void);
void user_mode_donothing(void);
_kernel_oserror *calleverytick(void (*fun)(void)); _kernel_oserror *calleverytick(void (*fun)(void));
void removetickerevent(void (*fun)(void)); void removetickerevent(void (*fun)(void));
......
...@@ -25,7 +25,6 @@ ...@@ -25,7 +25,6 @@
GET Hdr:ModHand GET Hdr:ModHand
GET Hdr:APCS.<APCS> GET Hdr:APCS.<APCS>
EXPORT user_mode_donothing
EXPORT splet EXPORT splet
EXPORT splimp EXPORT splimp
EXPORT splnet EXPORT splnet
...@@ -41,22 +40,6 @@ ...@@ -41,22 +40,6 @@
AREA poduleirqs, PIC, CODE, REL, READONLY AREA poduleirqs, PIC, CODE, REL, READONLY
ALIGN
; os_error *usermode_donothing();
user_mode_donothing ROUT
FunctionEntry
; Now execute a SWI in user mode to trigger callbacks
WritePSRc 0, r0 ; IRQs on, user mode
MOV r0, #0
MOV r1, #1
SWI XOS_Byte ; Read OS version
SWI XOS_EnterOS ; Back to SVC mode
Return
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; ;
; splhi etc: ; splhi etc:
......
...@@ -43,9 +43,10 @@ ...@@ -43,9 +43,10 @@
#include "netinet/in_pcb.h" // #include "netinet/in_pcb.h" //
#include "debug.h" #include "debug.h"
#include "module.h"
#include "swiveneers.h" #include "swiveneers.h"
#include "module.h"
#include "AsmUtils/callbacks.h"
#include "Global/HALEntries.h" #include "Global/HALEntries.h"
#define TickerV 28 #define TickerV 28
...@@ -523,7 +524,7 @@ tsleep(event, prio, wmesg, wait, sleep_task) ...@@ -523,7 +524,7 @@ tsleep(event, prio, wmesg, wait, sleep_task)
goto out; goto out;
} }
user_mode_donothing(); usermode_donothing();
} }
out: out:
if (wait) if (wait)
......
...@@ -46,7 +46,7 @@ c_time # 4 ...@@ -46,7 +46,7 @@ c_time # 4
EXPORT tick_entry EXPORT tick_entry
tick_entry tick_entry
STMFD sp!,{r0-r2,lr} Push "r0-r2, lr"
LDR r2,[r12] LDR r2,[r12]
LDR r2,[r2,#8] LDR r2,[r2,#8]
LDR r0,P_time LDR r0,P_time
...@@ -68,7 +68,7 @@ tick_entry ...@@ -68,7 +68,7 @@ tick_entry
ADD r1,r2,r1 ; sort out relocations ADD r1,r2,r1 ; sort out relocations
LDR r1,[r1,#c_next] ; r1=calltodo->c_next LDR r1,[r1,#c_next] ; r1=calltodo->c_next
TEQS r1,#0 TEQS r1,#0
LDMEQFD sp!,{r0-r2,pc} Pull "r0-r2, pc",EQ
0 ; while (r1) 0 ; while (r1)
LDR r2,[r1,#c_time] LDR r2,[r1,#c_time]
SUBS r2,r2,#1 ; decrement r1->c_time SUBS r2,r2,#1 ; decrement r1->c_time
...@@ -82,7 +82,7 @@ tick_entry ...@@ -82,7 +82,7 @@ tick_entry
B break_with_sched B break_with_sched
break break
TEQS a1,#0 ; check needtocall TEQS a1,#0 ; check needtocall
LDMEQFD sp!,{r0-r2,pc} Pull "r0-r2, pc",EQ
break_with_sched break_with_sched
LDR a3,[r12] LDR a3,[r12]
...@@ -101,7 +101,7 @@ break_with_sched ...@@ -101,7 +101,7 @@ break_with_sched
ADD a1,a3,a1 ADD a1,a3,a1
LDR a2,[a1] LDR a2,[a1]
TEQS a2,#0 TEQS a2,#0
LDMNEFD sp!,{a1-a3,pc} Pull "a1-a3, pc",NE
; callbackflag = 1; ; callbackflag = 1;
MOV a2,#1 MOV a2,#1
STR a2,[a1] STR a2,[a1]
...@@ -129,16 +129,16 @@ break_with_sched ...@@ -129,16 +129,16 @@ break_with_sched
ORR lr,r12,#3 ORR lr,r12,#3
MSR CPSR_c,lr MSR CPSR_c,lr
] ]
STMFD sp!,{lr} ; Save R14_SVC (in case in IRQ mode) Push "lr" ; Save R14_SVC (in case in IRQ mode)
SWI XOS_AddCallBack SWI XOS_AddCallBack
LDMFD sp!,{lr} ; Restore R14_SVC Pull "lr" ; Restore R14_SVC
[ {CONFIG}=26 [ {CONFIG}=26
TEQP r12,pc ; Restore mode, preserving flags TEQP r12,pc ; Restore mode, preserving flags
NOP NOP
| |
MSR CPSR_c,r12 MSR CPSR_c,r12
] ]
LDMVCFD sp!,{a1-a3,pc} Pull "a1-a3, pc",VC
; if an error ; if an error
; callbackflag=0; ; callbackflag=0;
LDR a1,P_callbackflag LDR a1,P_callbackflag
...@@ -151,7 +151,7 @@ break_with_sched ...@@ -151,7 +151,7 @@ break_with_sched
MOV a2,#1 MOV a2,#1
STR a2,[a1] STR a2,[a1]
LDMFD sp!,{a1-a3,pc} Pull "a1-a3, pc"
P_time P_time
IMPORT kerneltime IMPORT kerneltime
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include "kernel.h" #include "kernel.h"
#include "swis.h" #include "swis.h"
#include "AsmUtils/callbacks.h"
#include "int_hndlr.h" #include "int_hndlr.h"
#include "sys/param.h" #include "sys/param.h"
...@@ -861,7 +862,7 @@ _kernel_oserror *inet_final(void) ...@@ -861,7 +862,7 @@ _kernel_oserror *inet_final(void)
* of the Internet module, but I will leave it here for * of the Internet module, but I will leave it here for
* the time being. * the time being.
*/ */
user_mode_donothing(); usermode_donothing();
/* /*
* 990623 KBracey * 990623 KBracey
......
...@@ -12,30 +12,17 @@ ...@@ -12,30 +12,17 @@
; See the License for the specific language governing permissions and ; See the License for the specific language governing permissions and
; limitations under the License. ; limitations under the License.
; ;
XOS_Byte * &20006
XOS_Word * &20007 GET Hdr:ListOpts
XOS_Module * &2001E GET Hdr:Macros
ModHandReason_Claim * 6 GET Hdr:System
ModHandReason_Free * 7 GET Hdr:APCS.<APCS>
XOS_Claim * &2001F GET Hdr:ModHand
XOS_Release * &20020 GET Hdr:MsgTrans
XOS_GenerateEvent * &20022 GET Hdr:Portable
XOS_ReadEscapeState * &2002C GET Hdr:TaskWindow
XOS_ServiceCall * &20030 GET Hdr:Econet
XOS_UpCall * &20033
XOS_ReadMonotonicTime * &20042
XOS_AddCallBack * &20054
XOS_ReadSysInfo * &20058
XOS_RemoveCallBack * &2005F
XEconet_InetRxDirect * &6001D
XMessageTrans_FileInfo * &61500
XMessageTrans_OpenFile * &61501
XMessageTrans_Lookup * &61502
XMessageTrans_CloseFile * &61504
XPortable_Speed * &62FC0
XPortable_ReadFeatures * &62FC5
XPortable_Idle * &62FC6
XTaskWindow_TaskInfo * &63380
XMbuf_OpenSession * &6A580 XMbuf_OpenSession * &6A580
XMbuf_CloseSession * &6A581 XMbuf_CloseSession * &6A581
XMbuf_Control * &6A584 XMbuf_Control * &6A584
...@@ -95,9 +82,9 @@ InternetStatus_DuplicateIPAddress * 8 ...@@ -95,9 +82,9 @@ InternetStatus_DuplicateIPAddress * 8
MACRO MACRO
LDMRet $regs,$cond LDMRet $regs,$cond
[ {CONFIG}=26 [ {CONFIG}=26
LDM$cond.FD sp!,{$regs,pc}^ LDM$cond.FD sp!, { $regs },^
| |
LDM$cond.FD sp!,{$regs,pc} LDM$cond.FD sp!, { $regs }
] ]
MEND MEND
...@@ -155,18 +142,18 @@ messagetrans_open_file ...@@ -155,18 +142,18 @@ messagetrans_open_file
ROUT ROUT
messagetrans_lookup messagetrans_lookup
MOV ip,sp MOV ip,sp
STMFD sp!,{v1-v4,lr} Push "v1-v4,lr"
MOV v1,#0 MOV v1,#0
MOV v2,#0 MOV v2,#0
MOV v3,#0 MOV v3,#0
MOV v4,#0 MOV v4,#0
SWI XMessageTrans_Lookup SWI XMessageTrans_Lookup
LDMRet "v1-v4",VS LDMRet "v1-v4,pc",VS
LDR lr,[ip] LDR lr,[ip]
TEQS lr,#0 TEQS lr,#0
STRNE a3,[lr] STRNE a3,[lr]
MOV a1,#0 MOV a1,#0
LDMRet "v1-v4" LDMRet "v1-v4,pc"
; void messagetrans_close_file(u_long *fd); ; void messagetrans_close_file(u_long *fd);
ROUT ROUT
...@@ -178,13 +165,13 @@ messagetrans_close_file ...@@ -178,13 +165,13 @@ messagetrans_close_file
; void service_dci_protocol_status(void *wsp, int status, int ver, const char *title) ; void service_dci_protocol_status(void *wsp, int status, int ver, const char *title)
ROUT ROUT
service_dci_protocol_status service_dci_protocol_status
STMFD sp!,{v1,lr} Push "v1,lr"
MOV v1,a4 MOV v1,a4
MOV a4,a3 MOV a4,a3
MOV a3,a2 MOV a3,a2
MOV a2,#Service_DCIProtocolStatus MOV a2,#Service_DCIProtocolStatus
SWI XOS_ServiceCall SWI XOS_ServiceCall
LDMRet "v1" LDMRet "v1,pc"
; void service_internetstatus_address_changed(void) ; void service_internetstatus_address_changed(void)
ROUT ROUT
...@@ -198,51 +185,51 @@ service_internetstatus_address_changed ...@@ -198,51 +185,51 @@ service_internetstatus_address_changed
; void service_internetstatus_interface_updown(int state, const char *name, const void *dib) ; void service_internetstatus_interface_updown(int state, const char *name, const void *dib)
ROUT ROUT
service_internetstatus_interface_updown service_internetstatus_interface_updown
STMFD sp!,{v1,lr} Push "v1,lr"
MOV v1,a3 MOV v1,a3
MOV a4,a2 MOV a4,a2
MOV a3,a1 MOV a3,a1
MOV a2,#Service_InternetStatus MOV a2,#Service_InternetStatus
MOV a1,#InternetStatus_InterfaceUpDown MOV a1,#InternetStatus_InterfaceUpDown
SWI XOS_ServiceCall SWI XOS_ServiceCall
LDMRet "v1" LDMRet "v1,pc"
; int service_internetstatus_dynamicboot_start(const char *name, const void *dib, char *pkt, int len, ; int service_internetstatus_dynamicboot_start(const char *name, const void *dib, char *pkt, int len,
; int eoo, int *error_code) ; int eoo, int *error_code)
ROUT ROUT
service_internetstatus_dynamicboot_start service_internetstatus_dynamicboot_start
MOV ip, sp MOV ip, sp
STMFD sp!,{a1-a4,v1-v6,lr} Push "a1-a4,v1-v6,lr"
LDMFD sp!,{a3-a4,v1,v2} Pull "a3-a4,v1,v2"
STMFD sp!, {ip} Push "ip"
LDR v3, [ip] LDR v3, [ip]
MOV a2,#Service_InternetStatus MOV a2,#Service_InternetStatus
MOV a1,#InternetStatus_DynamicBootStart MOV a1,#InternetStatus_DynamicBootStart
SWI XOS_ServiceCall SWI XOS_ServiceCall
LDMFD sp!, {ip} Pull "ip"
LDR a4, [ip, #4] LDR a4, [ip, #4]
STRVC a3, [a4] STRVC a3, [a4]
MOVVS a1, #0 MOVVS a1, #0
STRVS a1, [a4] STRVS a1, [a4]
MOVVC a1, a2 MOVVC a1, a2
LDMRet "v1-v6" LDMRet "v1-v6,pc"
; int service_internetstatus_dynamicboot_reply(const char *name, const void *dib, char *pkt, int len) ; int service_internetstatus_dynamicboot_reply(const char *name, const void *dib, char *pkt, int len)
ROUT ROUT
service_internetstatus_dynamicboot_reply service_internetstatus_dynamicboot_reply
STMFD sp!,{a1-a4,v1-v6,lr} Push "a1-a4,v1-v6,lr"
LDMFD sp!,{a3-a4,v1,v2} Pull "a3-a4,v1,v2"
MOV a2,#Service_InternetStatus MOV a2,#Service_InternetStatus
MOV a1,#InternetStatus_DynamicBootReply MOV a1,#InternetStatus_DynamicBootReply
SWI XOS_ServiceCall SWI XOS_ServiceCall
MOVVS a1, #Service_InternetStatus MOVVS a1, #Service_InternetStatus
MOVVC a1, a2 MOVVC a1, a2
LDMRet "v1-v6" LDMRet "v1-v6,pc"
; int service_internetstatus_dynamicboot_inform(char *pkt, int len) ; int service_internetstatus_dynamicboot_inform(char *pkt, int len)
ROUT ROUT
service_internetstatus_dynamicboot_inform service_internetstatus_dynamicboot_inform
STMFD sp!,{v1-v6,lr} Push "v1-v6,lr"
MOV a4, a2 MOV a4, a2
MOV a3, a1 MOV a3, a1
MOV a2,#Service_InternetStatus MOV a2,#Service_InternetStatus
...@@ -250,12 +237,12 @@ service_internetstatus_dynamicboot_inform ...@@ -250,12 +237,12 @@ service_internetstatus_dynamicboot_inform
SWI XOS_ServiceCall SWI XOS_ServiceCall
MOVVS a1, #Service_InternetStatus MOVVS a1, #Service_InternetStatus
MOVVC a1, a2 MOVVC a1, a2
LDMRet "v1-v6" LDMRet "v1-v6,pc"
; int service_internetstatus_duplicate_ip_address(const char *name, const void *dib, struct in_addr addr, u_char *hwaddr) ; int service_internetstatus_duplicate_ip_address(const char *name, const void *dib, struct in_addr addr, u_char *hwaddr)
ROUT ROUT
service_internetstatus_duplicate_ip_address service_internetstatus_duplicate_ip_address
STMFD sp!,{v1-v2,lr} Push "v1-v2,lr"
MOV v2,a4 MOV v2,a4
MOV v1,a3 MOV v1,a3
MOV a4,a2 MOV a4,a2
...@@ -264,7 +251,7 @@ service_internetstatus_duplicate_ip_address ...@@ -264,7 +251,7 @@ service_internetstatus_duplicate_ip_address
MOV a1,#InternetStatus_DuplicateIPAddress MOV a1,#InternetStatus_DuplicateIPAddress
SWI XOS_ServiceCall SWI XOS_ServiceCall
MOVVC a1, a2 MOVVC a1, a2
LDMRet "v1-v2" LDMRet "v1-v2,pc"
; void service_enumerate_network_drivers(ChDibRef *) ; void service_enumerate_network_drivers(ChDibRef *)
ROUT ROUT
...@@ -347,11 +334,11 @@ os_remove_call_back ...@@ -347,11 +334,11 @@ os_remove_call_back
ROUT ROUT
econet_inet_rx_direct econet_inet_rx_direct
MOV ip,sp MOV ip,sp
STMFD sp!,{v1-v3,lr} Push "v1-v3,lr"
LDMIA ip,{v1-v3} LDMIA ip,{v1-v3}
SWI XEconet_InetRxDirect SWI XEconet_InetRxDirect
MOV a1,a2 MOV a1,a2
LDMRet "v1-v3" LDMRet "v1-v3,pc"
; _kernel_oserror *taskwindow_task_info(int, int *) ; _kernel_oserror *taskwindow_task_info(int, int *)
ROUT ROUT
...@@ -373,21 +360,21 @@ os_upcall ...@@ -373,21 +360,21 @@ os_upcall
; unsigned osreadsysinfo_hardware0(void) ; unsigned osreadsysinfo_hardware0(void)
ROUT ROUT
osreadsysinfo_hardware0 osreadsysinfo_hardware0
STMFD sp!,{v1,lr} Push "v1,lr"
MOV a1,#2 MOV a1,#2
SWI XOS_ReadSysInfo SWI XOS_ReadSysInfo
MOVVS a1,#0 MOVVS a1,#0
LDMRet "v1" LDMRet "v1,pc"
; void osreadsysinfo_machineid(unsigned int *mac) ; void osreadsysinfo_machineid(unsigned int *mac)
ROUT ROUT
osreadsysinfo_machineid osreadsysinfo_machineid
STMFD sp!,{v1,lr} Push "v1,lr"
MOV ip,a1 MOV ip,a1
MOV a1,#2 MOV a1,#2
SWI XOS_ReadSysInfo SWI XOS_ReadSysInfo
STMVCIA ip,{a4,v1} STMVCIA ip,{a4,v1}
LDMRet "v1" LDMRet "v1,pc"
; void osword_read_realtime(machinetime *mt) ; void osword_read_realtime(machinetime *mt)
ROUT ROUT
...@@ -400,10 +387,6 @@ osword_read_realtime ...@@ -400,10 +387,6 @@ osword_read_realtime
SWI XOS_Word SWI XOS_Word
MOVRet ip MOVRet ip
PortableFeature_Speed * 1 :SHL: 0
PortableFeature_Idle * 1 :SHL: 4
PortableFeature_Stop * 1 :SHL: 5
; unsigned portable_read_features(void) ; unsigned portable_read_features(void)
ROUT ROUT
portable_read_features portable_read_features
......
...@@ -54,6 +54,7 @@ ...@@ -54,6 +54,7 @@
#include <stddef.h> #include <stddef.h>
#include "kernel.h" #include "kernel.h"
#include "swis.h" #include "swis.h"
#include "AsmUtils/callbacks.h"
#include "sys/types.h" #include "sys/types.h"
#include "sys/param.h" #include "sys/param.h"
...@@ -302,7 +303,7 @@ bootsleep(int cmd) ...@@ -302,7 +303,7 @@ bootsleep(int cmd)
if (whoiam_service_claimed == 0) if (whoiam_service_claimed == 0)
while (whoamiaddr == 0) while (whoamiaddr == 0)
{ {
user_mode_donothing(); usermode_donothing();
if (((cmd == SIOCGWHOIAMRB) || (cmd == SIOCGWHOIAMB)) && left_alt_is_pressed() && right_alt_is_pressed()) if (((cmd == SIOCGWHOIAMRB) || (cmd == SIOCGWHOIAMB)) && left_alt_is_pressed() && right_alt_is_pressed())
{ {
......