+TheBF Posted October 20, 2020 Share Posted October 20, 2020 1 minute ago, GDMike said: Well yesterday I tried doing something similar to that I thought I was doing that and when I did an sbz one I lost my map Yes of course. SBZ 1 turns OFF the mapper. SBO 1 turns ON the mapper. Leave it on after you have done the SAMSINIT. 1 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) But Lee said sbz 1 after writing.. I'll do that after im done with my screen writes with a blurted, LI R12,>1E00 SBO 0 SBZ 1 I'll figure it tommorow. But something similar. Edited October 20, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
+TheBF Posted October 20, 2020 Share Posted October 20, 2020 Just now, GDMike said: But Lee said sbz 1 after writing.. I'll do that after in done with my screen writes SBZ 0 after you write to the register to turn the card off so other cards can play in the sandbox. BIT 1 turns the MAPPER on/off. 2 totally different functions, same CRU address in R12. It only hurts for a while then it gets better. 1 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 I'll have to reconstruct the"SEARCH" routine a bit now after I get this mapping ordeal done. Because I have to search the complete number of banks, with the ability to *break out of the routine, ability to report the page .. but I think I can do it. Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) 27 minutes ago, TheBF said: SBZ 0 after you write to the register to turn the card off so other cards can play in the sandbox. BIT 1 turns the MAPPER on/off. 2 totally different functions, same CRU address in R12. It only hurts for a while then it gets better. Ahh. Yes SBZ 0 ok. I've mispoken my bits off. So when I tried that yesterday I must have had the mapper off because that's why I lost my map I suppose, yes. tomorrow I'll put it all to use I'm sure it'll work out! looks simple now. I think I've got it actually, it may not look that way reading through this. But you laid it out there. I don't think I can go wrong now. Edited October 20, 2020 by GDMike 2 Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted October 20, 2020 Share Posted October 20, 2020 11 minutes ago, GDMike said: Ahh. Yes SBZ 0 ok. So when I tried that yesterday I must have had the mapper off because that's why I lost my map I suppose well tomorrow I'll put it all to use I'm sure it'll work out looks simple. Exactly! You did, indeed, have the mapper in transparent mode (ok, off). That was what prompted my little dissertation. One thing I have to keep reminding myself of ALL of the time is what exactly SBO and SBZ mean, especially when the bits I am setting are 0 and 1. It is oh so easy for me to confuse what the instruction is doing with the bit I am trying to change: SBO 0, say to self: “for bit 0, Set Bit to One” SBZ 0, say to self: “for bit 0, Set Bit to Zero” SBO 1, say to self: “for bit 1, Set Bit to One” SBZ 1, say to self: “for bit 1, Set Bit to Zero” I do still trip myself up. ...lee 3 1 Quote Link to comment Share on other sites More sharing options...
HOME AUTOMATION Posted October 20, 2020 Share Posted October 20, 2020 54 minutes ago, GDMike said: 1E00 -> R12 SBO 0 -> card is on. So so if I leave the mapper pointing to a particular page and turn off the card and when I turn the card back on then the mapper will still be already mapped? Yes, in fact even when you turn the card off, the mapper remains mapped. You simply can't update the mapper registers when the card is off, because the mapper registers are hidden, allowing other devices to use the mapper's register addresses for their own purposes. >4000 thru >5FFF is a space that is meant to be swapped between devices. For most devices, this is where their DSR resides, but SAMS has no DSR, instead using this space for it's mapping registers. Comprende? 1 1 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) "It's all getting prettier at closing time". But by golly, I might just have an understanding of it. How bad would this of been if I were a drinker. Gees ? Edited October 20, 2020 by GDMike 1 Quote Link to comment Share on other sites More sharing options...
HOME AUTOMATION Posted October 20, 2020 Share Posted October 20, 2020 Shazam! Well... I hope so, Pyle!? 4 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) I'm still having problems. NEW Problem. Lol With SAMS not implemented, my program runs and I get my cursor blinking on a default address page which is data moved to the screen. But when I added in the SAMs coding I get my new screen correctly blanked out correctly and the process,SINIT, MAPPG all completes with a RT statement at the end of each call. The process: it completes the initialization process and clears the pages (screens), Then it loads up page one page number at the top right of the screen, the cursor shows up and the screen has the new clear data from the maped page that was run, via MAPPG. Error: But it never completes the map page process with the return, rt, as it hangs on the return address, SAVRTN. My SAVRTN is: SAVRTN DATA 0 My MAPPG is started off with a MOV R11,@SAVRTN And ends with MOV @SAVRTN,R11 at the end of the map page routine is where it turns off the card but leaves mapping on. Before calling the MAPPG routine for my screen routine, I didn't do a SAMON or SINIT, as I thought the mapper, when called, would turn on the card? Is there a way to do that or do I need to call one of the other subs., SAMON,SINIT? It looks like my SAMs code works though, meaning, I received correctly blanked screen data from the map. But it can't finish as it hangs on RT or MOV @SAVRTN,R11 on its exit out to blink the cursor again. Update: tried SAMON prior to calling MAPPG, and it had no effect. I changed my RT command to a different variable. No effect I'll try to get the simple screen routine code uploaded Along with MAPPG. NOTE: I left mapping on as instructed. I never used SAMOFF Edited October 20, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted October 20, 2020 Share Posted October 20, 2020 10 minutes ago, GDMike said: Before calling the MAPPG routine for my screen program, I didn't do a SAMON or SINIT, as I thought the mapper, when called, would turn on the card? Is there a way to do that or do I need to call one of the other subs., SAMON,SINIT? You can certainly write to the mapper registers in transparent mode, but that only makes sense to me when initializing SAMS. Whatever you write to the mapper registers does not swap any SAMS banks until you toggle the mapper to mapping mode. However, IMHO, initializing SAMS should be as near the first thing Super Notes does as possible—even before SNP copies any part of its program code to expansion RAM. Remind me again how SNP starts up, exactly. ...lee 2 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 I'll supply code Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) Code snippet Edited October 21, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) code snippet Edited October 21, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 this is, of course, a couple of many pages of code, the Routine at CCREST is where I end up After PAGE DOWN or PAGE and it hangs after page up, finish i cant continue on this laptop..ill be on the phone Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 Ok. But I was trying to say is the init process and the file snps2 completes and it waits for a key press with a blinking cursor. I hit page down and the routine branches and links over to CCrest. Oh..I think I have my answer.....I'm doing a couple BLs there...yikes...hmm. Because from page down routine I branch in link to CC rest CC rest branches and links to my map page program and then it returns I bet it's screwed up right there. I'll fix it Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 Recompiling.. I'll upload the SAMs codes in a bit Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) Snippet Edited October 21, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) I changed that BL within a BL and it didnt have any bearing on resolve. im still hanging up at CCREST RT Ill try a FORCEFULL B @ CRTN nope, can't do that. It's gotta finish the RT command I've got a couple of options yet. working on it oh, btw. You might see some redundant code, like mov R0,pos, mov pos,R0 that's just some left over troubleshooting. im aware of it Edited October 20, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted October 20, 2020 Share Posted October 20, 2020 21 minutes ago, GDMike said: im still hanging up at CCREST RT CCREST ??? ...lee 1 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 It's a label in the first file Quote Link to comment Share on other sites More sharing options...
Stuart Posted October 20, 2020 Share Posted October 20, 2020 (edited) Mike, I'm not sure why you've got every routine wrapped in a "MOV R11,@SAVRTN" and "MOV @SAVRTN,R11". You only need those if the routine actually modifies R11 - including making another BL call from within the routine. Edited October 20, 2020 by Stuart Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 Originally, I had issues not saving and reastsablishing R11. So I got into a habit of making sure not to lose R11. I was thinking, later maybe someone would go back through and fix things like that, I'm not sure about. Thx Quote Link to comment Share on other sites More sharing options...
Stuart Posted October 20, 2020 Share Posted October 20, 2020 Just be careful that you're not calling routine "1" which saves R11 to SAVRTN, which then calls routine "2" which saves *its* R11 to SAVRTN. Routine "2" will return as intended, but routine "1" will then return to the same place that routine "2" returned to ... 1 Quote Link to comment Share on other sites More sharing options...
GDMike Posted October 20, 2020 Author Share Posted October 20, 2020 (edited) Sorry about the confusion those that you were looking at are all subroutines pretty much. This is not the complete package. I sent the complete package over to Lee Stewart. I didn't know what part he wanted to see so I sent a partial originally. Edited October 20, 2020 by GDMike Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.