| |
6R6
Registered: Feb 2002 Posts: 245 |
Sidplay64 sd2iec
Hello,
I'm thinking about upgrading Sidplay64 to support directory browsing and image (d64,d81) browsing for sd2iec.
I wonder if there are people here interested in this upgrade.
And if the current sidplay64 0.6 performs nicely with
similar devices (uIEC, uiec2ata, mmc2iec, 1541u1, 1541u2).
regards,
6R6
|
|
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
actually in the german forum64 a bunch of people asked for exactly that :) |
| |
6R6
Registered: Feb 2002 Posts: 245 |
To bad I dont spreche german very well.
Anyway, upgrading has started.
I am really short on C64 memory, and I might need some help with bug-testing in this thread.
|
| |
MacGyver Account closed
Registered: Dec 2001 Posts: 149 |
At Forum64, English is allowed, too ;) |
| |
macx
Registered: Mar 2002 Posts: 255 |
I would not mind using my Infinity as a HVSC boombox. |
| |
6R6
Registered: Feb 2002 Posts: 245 |
Here is Sidplay64 TEST VERSION for sd2iec.
With directory and image (d64, d71, d81, i2m) browsing.
Max files and dirs in memory for this version : 170
Directories are marked as DIR and are sorted to
the top of the displayer.
Use return to open a directory.
Use shift+return to go back a directory.
You cannot change directories when shuffle mode is on (Next or Random). You need to set Manual mode with M.
When playing an rsid the border will turn grey.
You can probably exit by pressing space, ctrl, cbm or runstop.
If that doesnt work, hit the panic button (restore).
If that doesnt work, hit the reset button.
A red border means the file was not found, or the file doesnt have a rsid/psid header.
A "no memory error" means there's no memory to relocate sp64.
EDIT: Btw, make sure you only test with sids from the most recent hvsc update. |
| |
6R6
Registered: Feb 2002 Posts: 245 |
This is the dir sniffer and sorter.
It puts the dirs at the top of the displayer.
Is it possible to shorten this code, perhaps even make it
sort in a a-z range ?
maxfile = $03 ;Keeps track of # of files in memory
rzp = $06 ;word
countfile = $f0 ;byte
countdir = $f1 ;byte
dzp = $fc ;word
dirpos = $d000 ;Filenames
flengde = $daa1 ;Table of filename/dirname lengths for each entry in dirpos
;$01-$10 filename length
;$81-$90 dirname length
iec_dir_sort
lda #0
sta countfile
sort_next
jsr scanforfile ;scan for first file entry
bne bn91
rts
bn91 sta filevalue+1
tya
jsr getpos
sta dzp+1
stx dzp
lda countfile ;set first dir entry to scan
sta countdir ;for at same position as first file entry
jsr scanfordir
bne bn92
rts
bn92 sta dirvalue+1
tya
jsr getpos
sta rzp+1
stx rzp
ldy countfile ;filepos
dirvalue lda #0 ;insert dir value
sta flengde,y
ldy countdir ;dirpos
filevalue lda #0 ;insert file value
sta flengde,y
ldy #$0f ;swap names
swap2 lda (dzp),y ;filename
pha
lda (rzp),y ;dirname
sta (dzp),y ;store dirname in new position
pla
sta (rzp),y ;store filename in new position
dey
bpl swap2
bmi sort_next ;jmp
getpos pha
asl
asl
asl
asl
tax
pla
lsr
lsr
lsr
lsr
ora #>dirpos ;Filenames at $d000, $d010, $d020 ...
rts
scanfordir ldy countdir ;Search dir entries
bn93 lda flengde,y
bmi dirfound
iny
cpy maxfile
bne bn93
lda #0 ;nothing, so we exit
dirfound sty countdir
rts
scanforfile ldy countfile ;Search file entries
bn94 lda flengde,y
bpl filefound
iny
cpy maxfile
bne bn94
lda #0 ;nothing available, so we exit
filefound sty countfile
rts
|
| |
6R6
Registered: Feb 2002 Posts: 245 |
Sidplay64 for all drives & devices:
sidplay64_0688.zip
Sidplay64 for CMD, IDE64 & IEC devices (With directory browsing):
sidplay64_0688_iec_cmd_ide64.zip
(CMD = Creative Micro Designs devices)
Sidplay64 for sd2iec (With directory & image browsing):
sidplay64_0688_sd2iec.zip
Keys controls to use:
Return : Load sid file/Open directory/Open image file.
Instdel : Go back one directory level.
M/N/R : Manual selection/Next play/Random play
<- : Fastforward
Spacebar : Reload dir
Restore : Use the panic button when you are stuck.
Sd2iec version:
When in Random or Next mode you cannot open image files,
turn Manual mode on to do so.
Does any of these work with netdrive on device # 6 or 7? |
| |
Grue
Registered: Dec 2001 Posts: 162 |
On ide64 it doesnt understand IDE64 filetypes with ,sid suffix, it shows them as "DIR" on browser.
Gloria,sid shows as Gloria DIR
Gloria.sid,sid shows as Gloria.sid DIR
Gloria.sid,prg shows as :0F
I have lots of other ",sid" suffix files on that test dir, I guess :0f refers to number of directory entries before this one.
I managed to browse HVSC structure also from pclink device, with same kind of results, works if ",sid" is renamed to ",prg"
It should work with ide64 native filetypes, pclink renames .sid -> ,sid.
I'm used to play hvsc with pclink from my pc hd on c64, as it would take ages and bit more time to transfer whole hvsc on ide64 drive ;)
edit: I'm using latest ide64 0.91 beta 771 rom |
| |
6R6
Registered: Feb 2002 Posts: 245 |
v0.690:
Fixed Grue's issues with IDE64 and filetypes.
It works through pclink too.
Fixed a bug where sidplay64 code was relocated when loading a RSid file with not enough relocation pages. It now loads and run those files with no return to displayer.
http://privat.bluezone.no/glennrg/sp64/
|
| |
spider-j
Registered: Oct 2004 Posts: 498 |
tested all three 0.690 versions (normal, iec, sd2iec) with netdrive (drive 6)
on startup all versions show the same error message:
"@6: 31, SYNTAX ERROR, 00, 00"
but when you ignore this and hit return, everything works fine in every version. |
| |
spider-j
Registered: Oct 2004 Posts: 498 |
if forgot to test changing subdirs with netdrive. this doesn't work in iec-cmd-ide64 or in sd2iec version. $d020 turns red and directory is not changed.
this is the console output on pc when trying to change directory.
/home/spider/C64/sidtest/subdir
0 OPEN 2,6,0,SUBDIR
0 CHKIN 6,0
.CLOSE 6,0
/home/spider/C64/sidtest/, *
0 OPEN 1,6,0,$
0 CHKIN 6,0
........CLOSE 6,0
just to be 100% sure that nothing went wrong when compiling netdrive or whatever i also checked that changing directory with tfr and netdrive works from the ready-prompt via
DOS"CD:<dirname>"
and this is what the console output is then
CMD: cd:subdir
HuntPath: , subdir, subdir
path: subdir/
0 OPEN 0,6,15,cd:subdir
OPEN repeat 0,6,15,CD:SUBDIR
CLOSE 6,15
/home/spider/C64/sidtest/subdir/, *
0 OPEN 0,6,0,$
......CLOSE 6,0
1541u model 1 direct sd iec device (drive 9) shows slighty different behaviour as netdrive. you get the same error as mentioned in my previous post on startup, but you can enter a subdirectory. but then you can't leave the directory anymore via INS/DEL key. [ no console output this time :P ]
|
| |
6R6
Registered: Feb 2002 Posts: 245 |
I got RRnet with TFR inserted on my c64 with
Codenet IP: a.b.c.64
Netdrive IP: a.b.c.100
My winXP IP is: a.b.c.42
My windows firewall is off.
On pc side i start:
netdrive -r "c:\tmp\sids"
On c64 i change device number to dos"6
and i use the "net" function to set all vectors
at 0300-0334 to work with the netdrive.
Now when i try to load a dir or load a file nothing happnes
in the pc console window.
What am I doing wrong with my netdrive setup ?
I can send files to my c64 using codenet. So that part is fine.
|
| |
6R6
Registered: Feb 2002 Posts: 245 |
[EDIT]
v0.6902 - Testing Long filename support :
http://privat.bluezone.no/glennrg/sp64/
Works here with vice and windoze filesystem.
(dont use the instdel key in vice)
Does it works with longfilenames on iec, netdrive, 1541u etc. etc. etc. ?
|
| |
spider-j
Registered: Oct 2004 Posts: 498 |
afaik it should be just one ip for your c64 in general. so i wonder, why you've got two.
the usual way, how it works is:
- use setip tool for tfr on win or linux and enter ip of your c64 and the ip of your pc. ip for c64 is "free to chose", but you have to make sure, that it is within your dhcp adress range (if you use dhcp) or allow that static ip in your router.
- flash tfr
my experience so far is:
netdrive depends on the correct ips in the tfr.bin while codenet doesn't (at least it doesn't care about the pc ip).
|
| |
6R6
Registered: Feb 2002 Posts: 245 |
Ok spider-j, i suppose i got to reflash the tfr with a.b.c.42 as the (netdrive) pc ip.
|
| |
spider-j
Registered: Oct 2004 Posts: 498 |
unfortunately v0.692 doesn't seem to work with netdrive at all.
these are console outputs from: starting sidplay and trying to load "berzerk.prg"
v0.690 (works)
/home/spider/C64/sidtest/, *
0 OPEN 1,6,0,$
0 CHKIN 6,0
............CLOSE 6,0
/home/spider/C64/sidtest/berzerk.prg
0 OPEN 2,6,0,BERZERK.PRG
0 CHKIN 6,0
..CLOSE 6,0
/home/spider/C64/sidtest/berzerk.prg
0 OPEN 0,6,0,BERZERK.PRG
...........................................................CLOSE 6,0
CMD:
0 OPEN 111,6,15,
0 CHKIN 6,15
v0.692 (doesn't load anything except directory, $d020 stays black)
/home/spider/C64/sidtest/, *
0 OPEN 1,6,0,$
0 CHKIN 6,0
............CLOSE 6,0
/home/spider/C64/sidtest/
0 OPEN 2,6,0,
0 CHKIN 6,0
.CLOSE 6,0
/home/spider/C64/sidtest/, *
0 OPEN 1,6,0,$
0 CHKIN 6,0
tested both: iec-cmd-ide64 and sd2iec version.
|
| |
6R6
Registered: Feb 2002 Posts: 245 |
v0.6903 :
Modified the code to work better with netdrive. (Hope I didnt destroy anything important in the process.)
Sidplay64 with TFR & Netdrive (using WinXP):
--------------------------------------------
Rename all .sid extensions to .prg ( ren *.sid *.prg)
Dirnames: max 16 letters
Filenames: max 16 letters (not counting the ".prg" extension)
Reason for max 16 letters is that sidplay64 only stores 16 letters per filename. Long filenanems are loaded with the * wildcard. ( Netdrive doesnt work with the * wildcard. ( ? ))
If you want to set a rootdir with netdrive then use the slash sign "/" ( not the backslash "\" )
ie: netdrive -r c:/tmp/netdrivesids/
To go back a dir level you press enter on the ".." DIR line.
(Do not use instdel to go back a dir level with netdrive). |
| |
6R6
Registered: Feb 2002 Posts: 245 |
v0.691 (all in one zip on my page):
* netdrive + 1541ultimate dir browser update
* pclink + 1541ultimate $ letter fix
* rsid nmi bugfix
* more optimzing, rsid compatability is good again (silly bug removed)
CBM key to exit rsids.
170 files (and directories). |
| |
6R6
Registered: Feb 2002 Posts: 245 |
V06.93 ...
Already tested iec-2ata, sd2iec, 1541u (standalone mode), netdrive+tfr, ide64 and pclink.
171 files max. |
| |
6R6
Registered: Feb 2002 Posts: 245 |
[heavily edited:]
Dont download V06.94 - still bugs. |
| |
6R6
Registered: Feb 2002 Posts: 245 |
v0.695 ... on the page.
Found out that Run Stop cannot be disabled when you have a jiffydos 64 connected to a jiffydos drive.
The stop key is integrated into the JD handshake protocol and cannot be disabled by writing to $0328.
Removed saving low/high end adress after load.
This is adress is normally to be found at zeropage $ae+$af.
I read those zp's instead.
This is probably the final test version before 0.7 is completed.
|
| |
macx
Registered: Mar 2002 Posts: 255 |
Quote: v0.691 (all in one zip on my page):
* netdrive + 1541ultimate dir browser update
* pclink + 1541ultimate $ letter fix
* rsid nmi bugfix
* more optimzing, rsid compatability is good again (silly bug removed)
CBM key to exit rsids.
170 files (and directories).
This is the one to test now, right?
I am considering using my Infinity (http://www.manosoft.it/) on a c64 for HVCS boombox purposes, which is why I find the SD2IEC Sidplay interesting.
170 files - does this mean that the HVSC collection has to be divided up into 170 directories with 170 files in each (which would cover roughly 2/3 of the entire collection)? |
| |
6R6
Registered: Feb 2002 Posts: 245 |
v0.695 is the version to test.
The SP64 dir displayer has room for 171 files + folders.
More files or dirs after the first 171 will be ignored.
If you want the complete Drax collection you need to
divide his files in sub dirs:
/HVSC/Musicians/Drax/1/
/HVSC/Musicians/Drax/2/
/HVSC/Musicians/Drax/3/
..etc
A tip:
Note that sd2iec doesnt sort the dirs to the top for you. Create the dirs you want before you copy the files. |