
# Patch to allow NFS to work in a task window

Application:!Internet &2000
Description:Acorn TCP/IP Protocol Suite
Patch:Allows NFS to work in task windows
File:!Internet.rm.Internet &FFA
Location:&1F518
VerifyWord:&E59EE03C
Location:&1F520
ChangeWord:&E92D4007 &E92D400F
ChangeWord:&E3A00007 &E24DD040
ChangeWord:&E3A01000 &E3A00007
ChangeWord:&E3A02000 &E24F1028
ChangeWord:&E3A03000 &E1A0200D
ChangeWord:&EF020040 &E1A0300D
ChangeWord:&E92D0006 &EF020040
ChangeWord:&E24F1038 &E92D000E
ChangeWord:&E1A02003 &E33FF000
ChangeWord:&E3A03000 &E3A00000
ChangeWord:&EF020040 &E3A01001
ChangeWord:&E31FF0FC &EF020006
ChangeWord:&F1A00000 &EF020016
ChangeWord:&E3A00000 &E3A00007
ChangeWord:&E3A01001 &E8BD000E
ChangeWord:&EF020006 &EF020040
ChangeWord:&EF020016 &E28DD040
ChangeWord:&F1A00000 &E8BD800F

# Note that this second patch uses space freed up by the application of
# the first patch (the new routine in the first patch is shorter). Hence
# the careful use of VerifyWord to make sure everything can only be
# applied/removed in the right order.

Patch:Allows Internet to work with ARM2as and ARM61
File:!Internet.rm.Internet &FFA
Location:&1F560
VerifyWord:&E28DD040
Location:&1F518
ChangeWord:&E59EE03C &EA000012
Location:&1F568
ChangeWord:&E3A00007 &E59EE03C
ChangeWord:&E8BD0006 &E1B0F00E

# Fixes a bug in the first patch, which didn't preserve the flags on return
# which caused a crash when RMKilling the module.

Patch:Fixes RMKill of Internet to not crash
File:!Internet.rm.Internet &FFA
Location:&1F564
ChangeWord:&E8BD800F &E8FD800F


# Patch to allow NFS to work in a task window and with ARM2as and ARM61.

Application:Internet &FFA
Description:Acorn Internet module version 1.03 (AtomWide and Nexus cards)
Patch:Allows NFS to work in task windows and with ARM2as and ARM61
File:Internet &FFA

# Change the version number and date string.

Location:&3E
ChangeString:1.03<32>(26<32>Sep<32>1991) 1.04<32>(25<32>Feb<32>1992)

# First part of the ARM2as patch - puts in a jump to the second half.

Location:&19F6C
ChangeWord:&E59EE03C &EA000012

# TaksWindow patch - fixes the setting of CallBacks.

Location:&19F74
ChangeWord:&E92D4007 &E92D400F
ChangeWord:&E3A00007 &E24DD040
ChangeWord:&E3A01000 &E3A00007
ChangeWord:&E3A02000 &E24F1028
ChangeWord:&E3A03000 &E1A0200D
ChangeWord:&EF020040 &E1A0300D
ChangeWord:&E92D0006 &EF020040
ChangeWord:&E24F1038 &E92D000E
ChangeWord:&E1A02003 &E33FF000
ChangeWord:&E3A03000 &E3A00000
ChangeWord:&EF020040 &E3A01001
ChangeWord:&E31FF0FC &EF020006
ChangeWord:&E1A00000 &EF020016
ChangeWord:&E3A00000 &E3A00007
ChangeWord:&E3A01001 &E8BD000E
ChangeWord:&EF020006 &EF020040
ChangeWord:&EF020016 &E28DD040
ChangeWord:&E1A00000 &E8BD800F

# Second half of the ARM2as patch uses space freed up by the TaskWindow
# patch. By this point the register banks have settled on ARM2as so the
# original code sequence is now OK.

ChangeWord:&E3A00007 &E59EE03C
ChangeWord:&E8BD0006 &E1B0F00E

# Fixes a bug in the first patch, which didn't preserve the flags on return
# which caused a crash when RMKilling the module.

Patch:Fixes RMKill of Internet to not crash
File:Internet &FFA
Location:&3E
ChangeString:1.04<32>(25<32>Feb<32>1992) 1.05<32>(02<32>Mar<32>1992)
Location:&19FB8
ChangeWord:&E8BD800F &E8FD800F


# Patch to prevent NFS overflowing enumerate directories buffers

Application:!NFSFiler &2000
Description:Acorn TCP/IP Protocol Suite
Patch:Prevent NFS overflowing enumerate directories buffers
File:!NFSFiler.rm.NFS &FFA
Location:&9A68
ChangeWord:&E2840003 &E2840003
ChangeWord:&E3500000 &E3C00003
ChangeWord:&D2800003 &E0404004
ChangeWord:&E1A00140 &E0466004
ChangeWord:&E1A04100 &E1A04000

# Change the version number and date string.
Location:&3C
ChangeString:1.01<32>(17<32>Aug<32>1990) 1.02<32>(05<32>Mar<32>1992)
