How is one supposed to launch SJLOAD07?

Discuss anything related to the VIC
User avatar
pixel
Vic 20 Scientist
Posts: 1359
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/
Location: Berlin, Germany
Occupation: Pan–galactic shaman

How is one supposed to launch SJLOAD07?

Post by pixel »

Am guessing it's LOAD…,8,1 – and what about the OUT OF MEMORY error?
Attachments
SJLoad07.zip
(8.92 KiB) Downloaded 42 times
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose
User avatar
Mike
Herr VC
Posts: 4842
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: How is one supposed to launch SJLOAD07?

Post by Mike »

You get the ?OUT OF MEMORY error because any LOAD of a non-BASIC program file in direct mode 'deranges' 45/46 (start of variables, a.k.a. 'end of program') and it then (likely) points out of range regarding the BASIC area. This is fixed by issuing a NEW after LOAD, and in turn this applies to pretty much any absolute loaded machine code executable that comes without BASIC stub.

SJLOAD$04 is then started with SYS 1024, SJLOAD$B0 with SYS 45056. They're not STOP/RESTORE proof and need to be restarted with the respective same SYS after that.

As an example how to start up SJLOAD from within a program, take a look at the boot procedure of my Mah Jongg (it uses SJLOAD$B0, thus requires RAM in BLK5, i.e. +32K RAM in total).
User avatar
pixel
Vic 20 Scientist
Posts: 1359
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/
Location: Berlin, Germany
Occupation: Pan–galactic shaman

Re: How is one supposed to launch SJLOAD07?

Post by pixel »

Mike wrote: Sun Jan 09, 2022 8:14 am As an example how to start up SJLOAD from within a program, take a look at the boot procedure of my Mah Jongg (SJLOAD use requires RAM in BLK5, i.e. +32K RAM in total).
Ah, thanks very cool! There's a cleaned up version (in matters of source code readability) of SJLOAD07 for ca65 coming up. See also https://github.com/SvenMichaelKlose/ing ... d/main.asm
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose
User avatar
Mike
Herr VC
Posts: 4842
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: How is one supposed to launch SJLOAD07?

Post by Mike »

pixel wrote:There's a cleaned up version (in matters of source code readability) of SJLOAD07 for ca65 coming up. See also https://github.com/SvenMichaelKlose/ing ... d/main.asm

Code: Select all

SJLOAD_START  = $9800
I suppose you're going to use SJLOAD with Ingle, on Ultimem, and thus you should know what you're doing.

Nethertheless I'd suggest you use another default start address in the source, like the already mentioned $0400 or $B000. Otherwise, this executable is going to annoy quite some unsuspecting Mega-Cart or FE3 users when it loads all over the cartridge's I/O area.
User avatar
pixel
Vic 20 Scientist
Posts: 1359
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/
Location: Berlin, Germany
Occupation: Pan–galactic shaman

Re: How is one supposed to launch SJLOAD07?

Post by pixel »

Mike wrote: Sun Jan 09, 2022 8:51 am I suppose you're going to use SJLOAD with Ingle, on Ultimem, and thus you should know what you're doing.
No, I'm not? But getting there is the plan. Therefore those meditative clean-ups.
EDIT: Should UltiFS work some day most of it'll happen in a separate set of banks. See https://github.com/SvenMichaelKlose/ing ... src/ultifs – only wedge-primary.asm has to go some place – and it could get split up and scattered.
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Re: How is one supposed to launch SJLOAD07?

Post by nbla000 »

Please note that v7 version works for PAL machines only, many years ago I released another v.8 version with 2 distinct versions for PAL and NTSC for Mega-Cart but lately I discovered that SJLOAD (all versions) has some problems with pi1541 that I'm tring to fix, it's a bit hard because I cannot find my v8 sources... :oops:

PS: How is going with Arukanoido? do you think to release it?
Mega-Cart: the cartridge you plug in once and for all.
User avatar
pixel
Vic 20 Scientist
Posts: 1359
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/
Location: Berlin, Germany
Occupation: Pan–galactic shaman

Re: How is one supposed to launch SJLOAD07?

Post by pixel »

nbla000 wrote: Mon Jan 31, 2022 1:13 pm Please note that v7 version works for PAL machines only, many years ago I released another v.8 version with 2 distinct versions for PAL and NTSC for Mega-Cart but lately I discovered that SJLOAD (all versions) has some problems with pi1541 that I'm tring to fix, it's a bit hard because I cannot find my v8 sources... :oops:
But... I know it's nasty but perhaps redoing the upgrade for NTSC would inevitable then. Sounds like some fixes would be required for the pi1541 instead in the first place?
PS: How is going with Arukanoido? do you think to release it?
Actually I just hacked some accelerated sprite thing for it. Trying to reverse the metamorphosis of turning into a witless a*****e plus regular work is taking its toll. Probably I'll make somebody here happy with another thing first. Also I've got to find some android, cyborg or psychopath who can play that thing through at original arcade speed. ;)
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Re: How is one supposed to launch SJLOAD07?

Post by nbla000 »

pixel wrote: Mon Jan 31, 2022 6:17 pm But... I know it's nasty but perhaps redoing the upgrade for NTSC would inevitable then.
I have PAL/NTSC SJLOAD08 sources to my old PC that I have to find in the attic... It's just matter of time :roll:
Sounds like some fixes would be required for the pi1541 instead in the first place?
I have already patched Mega-Cart (PAL / NTSC) versions for compatibility with pi1541 and am currently in beta testing with the latest pi1541 private beta kernel, when the new pi1541 kernel is released and I am sure it will work for both PAL / NTSC , I will correct and publish the sources as well.
Probably I'll make somebody here happy with another thing first.
I'm really looking forward to Arukanoido, it's a really nice job but If I can, What is the other "thing"?
Mega-Cart: the cartridge you plug in once and for all.
User avatar
pixel
Vic 20 Scientist
Posts: 1359
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/
Location: Berlin, Germany
Occupation: Pan–galactic shaman

Re: How is one supposed to launch SJLOAD07?

Post by pixel »

nbla000 wrote: Tue Feb 01, 2022 2:03 am I have PAL/NTSC SJLOAD08 sources to my old PC that I have to find in the attic... It's just matter of time :roll:
Cool! Then I'll clean that one up, I guess.
I have already patched Mega-Cart (PAL / NTSC) versions for compatibility with pi1541 and am currently in beta testing with the latest pi1541 private beta kernel, when the new pi1541 kernel is released and I am sure it will work for both PAL / NTSC , I will correct and publish the sources as well.
Shame over me – never heard of the pi1541 before.
I'm really looking forward to Arukanoido, it's a really nice job but If I can, What is the other "thing"?
Thought I could distill almost four decades of programming/messing around experience into architectural awesomeness to teach/preach proper coding by doing a VI clone written in Linux-compatible C. So no wisdom right from the start. Arukanoido: just a matter of time. *dug*
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose
User avatar
MCes
Vic 20 Afficionado
Posts: 458
Joined: Fri Jul 24, 2015 1:19 am
Location: Italy

Re: How is one supposed to launch SJLOAD07?

Post by MCes »

nbla000 wrote: Tue Feb 01, 2022 2:03 am I have PAL/NTSC SJLOAD08 sources to my old PC that I have to find in the attic... It's just matter of time :roll:
Sounds like some fixes would be required for the pi1541 instead in the first place?
I have already patched Mega-Cart (PAL / NTSC) versions for compatibility with pi1541 and am currently in beta testing with the latest pi1541 private beta kernel, when the new pi1541 kernel is released and I am sure it will work for both PAL / NTSC , I will correct and publish the sources as well.
I am looking forward to the V8-PAL and V8-NTSC (compatible with pi1541),
I hope they can be "hidden" inside the 2k I/O2,3 to be placed into the JollyCart ...
:wink:
"Two things are infinite, the universe and human stupidity, and I am not yet completely sure about the universe." (Albert Einstein)
User avatar
tokra
Vic 20 Scientist
Posts: 1123
Joined: Tue Apr 27, 2010 5:32 pm
Location: Scheessel, Germany

Re: How is one supposed to launch SJLOAD07?

Post by tokra »

Are the NTSC- and PAL-variants very different? Since I use my Mega-Cart on both machines it would be nice to have a "universal"-version (V9) provided it still fits in the free space on the Mega-Cart. Also: obvious less bug reports from users with a version that checks for PAL/NTSC-device (using $ede4 in ROM).
User avatar
pixel
Vic 20 Scientist
Posts: 1359
Joined: Fri Feb 28, 2014 3:56 am
Website: http://hugbox.org/
Location: Berlin, Germany
Occupation: Pan–galactic shaman

Re: How is one supposed to launch SJLOAD07?

Post by pixel »

tokra wrote: Tue Feb 01, 2022 10:04 am Are the NTSC- and PAL-variants very different? Since I use my Mega-Cart on both machines it would be nice to have a "universal"-version (V9) provided it still fits in the free space on the Mega-Cart. Also: obvious less bug reports from users with a version that checks for PAL/NTSC-device (using $ede4 in ROM).
Full-blown set-up of v7 is a bit less than 1,5k. We'll live.
A man without talent or ambition is most easily pleased. Others set his path and he is content.
https://github.com/SvenMichaelKlose
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Re: How is one supposed to launch SJLOAD07?

Post by nbla000 »

MCes wrote: Tue Feb 01, 2022 8:47 am I am looking forward to the V8-PAL and V8-NTSC (compatible with pi1541),
I hope they can be "hidden" inside the 2k I/O2,3 to be placed into the JollyCart ...
I'm sure it will be v.9 to avoid confusion, btw the minimal I/O version that I use for mega-cart uses a bit more then 4 memory pages ($9BC1-$9FFF) just because is stored in 2 parts (since I use other IO NVRAM space for music and preferences) but a "normal" minimal version (load only) will fit 1Kb ($400 bytes) enough to store 2 (PAL/NTSC) versions even if must be ROM since some cartridges games writes on $9800 - $98FF Area (I remeber DIG DUG)
tokra wrote: Are the NTSC- and PAL-variants very different? Since I use my Mega-Cart on both machines it would be nice to have a "universal"-version (V9) provided it still fits in the free space on the Mega-Cart. Also: obvious less bug reports from users with a version that checks for PAL/NTSC-device (using $ede4 in ROM).
No they are not so different, but the problem is that Jiffy DOS uses a very time critical sync protocol (Steve White is fighting with it for pi1541 browser mode), and this is the reason because there are 2 distinct JiffyDOS rom for the Vic-20 I think.
Talking about Mega-Cart, the next SJLOAD version will check $ede4 in ROM and if the "installed" version is for that system uses it else uses kernal load, so you may install the PAL version but if you use a NTSC machine, the SYS40000 do nothing and LOAD works anyway (kernal protocol).
pixel wrote: Full-blown set-up of v7 is a bit less than 1,5k. We'll live.
Yes, theoretically on IO2/3 area you may fit 2 minimal (load only) PAL/NTSC versions or a full PAL or NTSC version (LOAD/SAVE/OPEN).
Mega-Cart: the cartridge you plug in once and for all.
User avatar
tokra
Vic 20 Scientist
Posts: 1123
Joined: Tue Apr 27, 2010 5:32 pm
Location: Scheessel, Germany

Re: How is one supposed to launch SJLOAD07?

Post by tokra »

nbla000 wrote: Wed Feb 02, 2022 3:03 am Talking about Mega-Cart, the next SJLOAD version will check $ede4 in ROM and if the "installed" version is for that system uses it else uses kernal load, so you may install the PAL version but if you use a NTSC machine, the SYS40000 do nothing and LOAD works anyway (kernal protocol).
To be honest, my installed PAL-version of SJLOAD08 on the MegaCart works fine on my NTSC-VIC as well. At least I never noticed a problem. So a check that *disables* SJLOAD for NTSC would be a step backwards for me. That's why I asked about a universal version that checks during runtime. If that's practical depends on how different the versions are. If it's just a few bytes it should be possible to set these during initialization.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Re: How is one supposed to launch SJLOAD07?

Post by nbla000 »

To be honest, my installed PAL-version of SJLOAD08 on the MegaCart works fine on my NTSC-VIC as well. At least I never noticed a problem. So a check that *disables* SJLOAD for NTSC would be a step backwards for me.
Yeah understood... but I remember that the PAL version sometime fails on NTSC machines, honestly I don't remember in which situation btw I will consider what you said and I can supply a SJLOAD09 without the $ede4 check, with just the pi1541 fix.
In any case if you don't have/use pi1541 but just sd2iec devices or CBM drives with JiffyDOS there is no reason to install SJLOAD09.
That's why I asked about a universal version that checks during runtime. If that's practical depends on how different the versions are. If it's just a few bytes it should be possible to set these during initialization.
A self hacking runtime code is not possible because when you write on $9E00-$9FFF (Mega-Cart NV-RAM area) the menu restarts, and this is the reason why you have to "install" SJLOAD with the mega-inject tool by Daniel Kahlin included on SJLOAD08-MC-PAL or SJLOAD08-MC-NTSC
Mega-Cart: the cartridge you plug in once and for all.
Post Reply