| |
Jammer
Registered: Nov 2002 Posts: 1336 |
TURBO loaders/savers
as in the topic - i really need some information on good turbo loaders and savers. irq ones don't count. it would be also great if they were tass sources, optionally with any relocator. what do you recommend? :) |
|
... 15 posts hidden. Click here to view all posts.... |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
Just wanted to say that I also think it would be nice if someone wrote routines like this... precisely for tools.
Codebase64 wants you! ;) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
just code those tools to properly use kernal calls and they'll work just fine with whatever speeder is installed. problem solved :) |
| |
AlexC
Registered: Jan 2008 Posts: 299 |
Just use action replay ;) Jokes aside I think you will need to write one by yourself. I'd take a peek at Covertbitops loader system and dreamload. |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Another vote for "just use kernal calls". Trust the user to have a fastload system installed. Everyone has some kind of fastload system - be it AR6, JiffyDOS, or warp mode. |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
You're all right about the kernal call stuff. Anyway, what would be really nice is if someone wrote a small little fileselector with dir/load/save capabilities and some options to enforce load/save adresses. It is easy to do, of course, but it would still be nice to have this in public, since it would be reuseable for all tool coding purposes.
Anyway... One benefit of actually having custom turbo load/save routines is that you could load a single file into split memory segments, rather than having to load it in a single chunk in C64 mem. Not a big issue in most cases, perhaps, but at least that is something that put a stop to the plans of using Kernal calls for load/save for me at one time. |
| |
hevosenliha
Registered: Sep 2008 Posts: 48 |
Quote: Another vote for "just use kernal calls". Trust the user to have a fastload system installed. Everyone has some kind of fastload system - be it AR6, JiffyDOS, or warp mode.
Or IDE64, please stick to the kernel calls! |
| |
cadaver
Registered: Feb 2002 Posts: 1160 |
If you read the file byte-by-byte with Kernal calls (open/chrin etc.), you can split the data into memory just like you wish, turbo not needed for that.
|
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
@Cadaver: You're right, of course... :) (...but then you won't have the benefit of turbo-speed inherited from a plugged in cartridge of course.) |
| |
Krill
Registered: Apr 2002 Posts: 2980 |
If you need sources, i can give you all my stuff, including the current loader (the multi-drive protocols aren't implemented yet), and those of Plush-DOS yago mentioned, although that is quite outdated stuff. |
| |
ready.
Registered: Feb 2003 Posts: 441 |
As I need a saver routine for my gfx editor as well and I spent some time in trying to implement it, here is what I came up with using Kernal routines:
*=$c000
;setnam
lda #(name1-name0) ;name length
ldx #<name0
ldy #>name0
jsr $ffbd
;setlfs
lda #$01 ;logical file number
ldx #$08 ;device number
ldy #$01 ;secondary address
;save
lda #<data0
sta $fb
lda #>data0
sta $fc
lda #$fb ;zero page pointer
ldx #<data1
ldy #>data1
jsr $ffd8
rts
name0 .text"CIAO"
name1
*=$c100
data0 .byte 0,1,2,3,4,5,6,7,8,9
data1
this saves the file "CIAO" to disk #8. The file contains the data 0,1,2,3,4,5,6,7,8,9 starting at $c100.
It might be obvious for somebody but I must say it was not for me at the beginning how to use Kernal routines. Useful reference:
http://noname.c64.org/csdb/release/?id=83305&show=summary#summa..
I tried with Krill's loader but I must say I got a headache quite soon. Sorry Krill, I need some time to figure out how to use it. I just needed a quick solution.
|
Previous - 1 | 2 | 3 - Next |