Jump to content
GDMike

Foxit - in progress

Recommended Posts

12 minutes ago, HOME AUTOMATION said:

Yes, when I discovered that the new object code was radically different from the original source, whilst in the middle of stepping through the program...

I nearly blew a fuse.🤪

 

So, after changing byte 1 of PDATA to >04, and then adding bytes 6,7, and using the uncompressed DF80 ULOAD, from DISK 4...

 

This appears to work! No debugging needed...

 

     read.thumb.jpg.62df80abb5fe34be5716f8528addf378.jpg

 

...not so bad after all.

;-)

We're bytes 6,7 still 0

  • Like 1

Share this post


Link to post
Share on other sites

Ok.. great!! Thank you...I just couldn't figure it...ttyl..gotta run. But I'll talk to you tomorrow..thx so much

Share this post


Link to post
Share on other sites
34 minutes ago, GDMike said:

We're bytes 6,7 still 0

I checked it out and...it's great! I'm still trying to figure what was wrong... because I had >04 for Byte 1 and I had added 0000 for 5,6 but I used >A instead of 10 like you did...so hmm..

Edited by GDMike

Share this post


Link to post
Share on other sites
4 minutes ago, HOME AUTOMATION said:

Well, what are you doin' 'rong?:D

I think I see it ..I think I was considering byte 0 and leaving>0000 as byte zero

Share this post


Link to post
Share on other sites

I was thinking it's supposed to stay 0000 instead of being part of byte 1...>0004 for bytes 0 & 1.

I was doing >0000,0004....and on.

Byte me

Edited by GDMike

Share this post


Link to post
Share on other sites
4 minutes ago, HOME AUTOMATION said:

What I believe ...I see!😁

So I'll have to try harder at this

Edited by GDMike
  • Haha 1

Share this post


Link to post
Share on other sites
40 minutes ago, GDMike said:

I checked it out and...it's great! I'm still trying to figure what was wrong... because I had >04 for Byte 1 and I had added 0000 for 5,6 but I used >A instead of 10 like you did...so hmm..

It shouldn't make a difference(>A/10). ...I just left it the way you had it.|:)

 

Haha, you changed this post too ...almost missed it.:twisted:

  • Like 1

Share this post


Link to post
Share on other sites

Well..I'm thrilled I can proceed to cram, no pun intended, compiled code to SAMs in Foxit at boot up. You da man again! Now go fix da van.

Edited by GDMike
  • Thanks 1

Share this post


Link to post
Share on other sites

I was seeing double bytes.. I kept thinking, I Know byte 0 is for open. So I don't want to mess with it .. but I forgot byte 1 sits next door and I created a fake duplicate bytes 0&1..in front of the real bytes 0&1. 

I'll never party again

Share this post


Link to post
Share on other sites
1 hour ago, HOME AUTOMATION said:

O.k. what's going on here?:twisted:

 

Back to work!:party:

 

...I can't be seen associating with slackers.:-o

Ok. Thx again, I'll put this to work.

 

I'll recant on what happened and why I need this.

I was writing Foxit and I started writing the screen form, which is the interface between the user and the data to be entered.

 

And after getting so much other Foxit code in and working up to this point I ran outta ram space for more coding. (We can always review why that is, but otherwise I have SAMs as a backup plan), Now because the Foxit program has to be compiled and actually at a RUN state before you can access SAMs banks other than the basic 32K I just couldn't push my code into banks. and I had to totally rely on that upper space from>A000->FF00 because that is the safe place since the EA routines use low ram from>2000- to around >2FFF or around there then my HELP routine would sit after>F000 and take up a large amount at the end of upper ram. 

 

I'll have to reserve >3000->3FFF for SAMs banking swapping since I'll be using>3000->3FFF for routines that don't fit in normal space.

And I didn't want to use a supercart for a solution like I did for SNE.

 

But this latest read using a file routine will allow me to pull in pre compiled standalone routines and push them to their own banks AT BOOT startup.

Then I can map to a bank that needs to run and branch to it and bounce back out.

I only need bank space for program use and not for user space since the filing system that the user will  work with is similar,(or will be expected), to work as a Block file does in forth, that is, when user data is needed then it's pulled from a file, and when changes happen then it's pushed to a file. So that relieves the use of SAMs for user space. Unfortunately, I ran short on program space. But not any More.

 

 

 

Edited by GDMike

Share this post


Link to post
Share on other sites

What was the reason, you decided to write this app in assembler, instead of Forth?

  • Like 1

Share this post


Link to post
Share on other sites

Good question. We were discussing early on on wether or not to do this in Forth, and since I already had SAMs function understood in assy. and I already had an understanding of the TIpi clock routine in assy. 

And not having that part in forth was was my turning point. BUT...I agreed that if I ran into a road block that I would turn to Forth.

The funny part is I had promised myself one more assy. program before going back to Forth again. I mean I could probably, maybe, as I can't say, but mos likely would have figured it out in Forth. As I'll have to in the future. 

But the good news is I'll be heading into forth as soon as Foxit is done. But mostly just to pick up those tools I described. Now Foxit definitely doesn't need speed as it's not relying on that to perform, so it's definitely something I may convert or rewrite in forth. At least I get a feel for it this way.

Now I'll put this out there, as far as Forth and SAMs use, I personally think forth uses SAMs banks up faster than assy does. But that is from my experience and there's a good chance my words in forth may have a weight problem. 

But, yeah. That's basically why.

Edited by GDMike
Fixed a word
  • Like 1

Share this post


Link to post
Share on other sites

Foxit is on hold.-

I'm dabbling in TurboForth now.

I've got SAMs loaded and I'm sitting at a blank screen... but I probably need to also include the assembler.. I've seen Marks SCREENS for that..I'll have to add it to my screens. I may also include SOUNDS too..

Edited by GDMike

Share this post


Link to post
Share on other sites

Load the modules you need, then use BSAVE to save them. You can instantly reload them later, as they are pre-complied. :thumbsup:

  • Like 1

Share this post


Link to post
Share on other sites
4 hours ago, Willsy said:

Load the modules you need, then use BSAVE to save them. You can instantly reload them later, as they are pre-complied. :thumbsup:

Thank you, yes. I have played with, hmm.. maybe it was gees.. I've forgotten the word... C save, F save, I can't remember what the heck it was now in FB forth...it's been a couple 3 years now...

 

But good to know what to be looking for.. with that fast load.

I'm still compiling, "can I use that word," the assembler, I'm getting typos.. where"0" and "O"s happen.. and last check, some error...

I had to type it in since I don't have internet where I was last night, but I had the booklet I made a few years back and just killing time, typed it in, Also HELPS to understand some things..

I'll grab the block image of it while I'm home and before heading out tonight on another long shift.. and I'll just forthit tonight.

 

Ok, what happened to Foxit..

I ran out of program space, Unless I included the supercart space, which I haven't, and I'm not sure that would satisfy my needs.

I have SAMs running and in order to drop in or to get standalone routines into SAMS banks well SAMs has to be running and the mapper running, it's just I wanted to be able to read a DF 80 file and push thatbto a SAMs bank, but it's not working out and that procedure has gotten over my head..

Now, im able to pull in at boot up, a help file of 192 bytes, and push it to SAMs bank >E0, and since the help file is self executing, and self exiting, it was all painless, but my temporary vram for doing that is only good for a 1 time process and it's not something I can do after Foxit is further in process. So I was thinking I could just read a DF80 and push it directly to SAMs, but I guess the file needs to be a program image type file and not a DF 80 type.

I'm guessing here, but otherwise I think it's just ASCII code. But I've given it a break, and maybe I need Forth because SAMs is already set immediately rt off the bat and maybe I can avoid that situation through Forth.

Plus, I wanted to finish Foxit and get back into forth and my time was expiring in assembly... if this, pulling in assembly code to SAMs, was More straight forward, I might have been done..

No love lost, it's a learning curve anyway.

I don't mind the problems, but not finding a work around isn't fun .

 

 

 

 

Edited by GDMike

Share this post


Link to post
Share on other sites
8 minutes ago, GDMike said:

Thank you, yes. I have played with, hmm.. maybe it was gees.. I've forgotten the word... C save, F save, I can't remember what the heck it was now in FB forth...it's been a couple 3 years now...

 

But good to know what to be looking for.. with that fast load.

I'm still compiling, "can I use that word," the assembler, I'm getting typos.. where"0" and "O"s happen.. and last check, some error...

I had to type it in since I don't have internet where I was last night, but I had the booklet I made a few years back and just killing time, typed it in, Also HELPS to understand some things..

I'll grab the block image of it while I'm home and before heading out tonight on another long shift.. and I'll just forthit tonight.

 

Ok, what happened to Foxit..

I ran out of program space, Unless I included the supercart space, which I haven't, and I'm not sure that would satisfy my needs.

I have SAMs running and in order to drop in or to get standalone routines into SAMS banks well SAMs has to be running and the mapper running, it's just I wanted to be able to read a DF 80 file and push thatbto a SAMs bank, but it's not working out and that procedure has gotten over my head..

Now, im able to pull in at boot up, a help file of 192 bytes, and push it to SAMs bank >E0, and since the help file is self executing, and self exiting, it was all painless, but my temporary vram for doing that is only good for a 1 time process and it's not something I can do after Foxit is further in process. So I was thinking I could just read a DF80 and push it directly to SAMs, but I guess the file needs to be a program image type file and not a DF 80 type.

I'm guessing here, but otherwise I think it's just ASCII code. But I've given it a break, and maybe I need Forth because SAMs is already set immediately rt off the bat and maybe I can avoid that situation through Forth.

Plus, I wanted to finish Foxit and get back into forth and my time was expiring in assembly... if this, pulling in assembly code to SAMs, was More straight forward, I might have been done..

No love lost, it's a learning curve anyway.

I don't mind the problems, but not finding a work around isn't fun .

 

 

 

 

Can't say that I understand all of that in detail, but if you have a bunch of Assembler code that you want to put in SAMS memory as pull-in modules here is how I think it could work.

  • Put a bunch of sub-routines together as one project that will fit as binary code in a 4K code block.
  • Assemble them all together at AORG >3000 with a printed listing so you know the entry address of each sub-routine.
  • Convert the Object code to binary code and save it as a program image
    • You can do this now with the Camel Forth Linker. There is a SAVE utility too I think.

To use the code blocks:

You need code in your program to pull a SAMS page into memory at >3000.

You need a short routine that calls DSR program LOAD on the binary program file saved before. 

The program file will load into >3000 in .5 seconds and is now in SAMS page #xx .

 

To call them you pull in the SAMS page, [email protected]<address  of your choice in the listing>

 

If you wanted to get fancy you could make a stack. By pushing both the SAMS page and R11 you could make a nestable routines across multiple SAMS blocks. :) 

 

 

  • Like 1

Share this post


Link to post
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...