If you own the NMI space then yes, you can use &A0-&A7. In general, if you need to use some memory that somebody else owns, but you only need if for a transient period, you can stack it and restore it:duikkie wrote:the trouble is the MMC or my SPI rom needs 4 bytes in page 0 , because &a0..&a1=datptr% , is pointer to adress used as lda (datptr%),Y=like 1900+y. i moved errptr% from &a8..&a9 to a2..a3.
Code: Select all
LDA &A8,X:PHA:DEX:BPL SaveLP
... use &A8-&AB
PLA:STA &A8,X:INX:CPX #4:BNE RestoreZP
DNFS is 3.0x, containing DFS 1.2x, NFS 3.6x and Tube 1.0x. The usual ROM found is 3.00 containing DFS 1.20, NFS 3.60 and Tube 1.00. You will also find DNFS 3.01 which contains DFS 1.21 which has a bug-fix for 3.5" drives, NFS 3.60 and Tube 1.00duikkie wrote:problems are with DNFS rom not sure about the version number
&FE18 is disable Econet NMIs and read Econet station ID.duikkie wrote:the NMI from DNFS looks at &fe18 and &FE20 ?? i see no docu on that in my books , from dfs,adv user guide. must be something for net ?? ( econet)
&FE20 is enable Econet NMIs on read, Video ULA on write.
If Econet owns NMIs and somebody else claims the NMIs, Econet has to stop any Econet NMIs occuring, so turns them off by reading &FE18. When the somebody else relinquishes NMIs and Econet claims them back it turns Econet NMIs back on by reading from &FE20.
But is used by the Master, it's the function key pointer. If you trample on &F8/9 without saving and restoring it you will kill whatever function key is currently being expanded. See http://mdfs.net/Docs/Comp/BBC/AllMemduikkie wrote:maybe datptr% can hide at &f8+&f9 not used by os 1.2 ??