home *** CD-ROM | disk | FTP | other *** search
RISC OS BBC BASIC V Source | 1994-06-07 | 1.2 KB | 43 lines |
- >KeyPatch
- (C) Nick Craig-Wood 1994
- buffer_size%=8192
- buffer% buffer_size%
- rmload("Keyboard")
- change(&1FC,&3B,&5D)
- change(&240,&5D,&3B)
- rmsave("Keyboard+")
- rmload("InternationalKeyboard")
- change(&FD4,&23,&5C)
- change(&FD5,&7E,&7C)
- change(&1206,&AC,&7E)
- change(&1226,&22,&40)
- change(&1236,&A3,&23)
- change(&1248,&04,&03)
- change(&124A,&04,&03)
- change(&124E,&00,&A3)
- change(&124F,&03,&00)
- change(&1346,&40,&22)
- change(&135C,&AB,&90)
- change(&135E,&00,&94)
- change(&135F,&03,&00)
- change(&136C,&BB,&91)
- change(&136E,&00,&95)
- change(&136F,&03,&00)
- rmsave("IntKeyBrd+")
- rmload(module$)
- "OS_Module",18,module$
- ,,,base%
- size%=base%!-4
- size%>buffer_size%
- 1,"Buffer too small"
- i%=0
- size%-1: buffer%?i%=base%?i%:
- rmsave(file$)
- "OS_File",10,file$,&FFA,,buffer%,buffer%+size%
- change(address%,old%,new%)
- address%>=size%
- 1,"Illegal address or wildly outside array"
- buffer%?address%<>old%
- 1,"This isn't the correct module version for this patch"
- buffer%?address%=new%
-