Jump to content
IGNORED

Supernotes


GDMike

Recommended Posts

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.

 

  • Like 1
Link to comment
Share on other sites

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. :) 

 

  • Haha 1
Link to comment
Share on other sites

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 by GDMike
  • Like 2
Link to comment
Share on other sites

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

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

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.:cool: >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?:pirate:

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

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 by GDMike
Link to comment
Share on other sites

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

  • Like 2
Link to comment
Share on other sites

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

 

Link to comment
Share on other sites

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 by GDMike
Link to comment
Share on other sites

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 by Stuart
Link to comment
Share on other sites

;-)  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 ...

  • Like 1
Link to comment
Share on other sites

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 by GDMike
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...