Squeeze and Sub howto....

Discuss anything related to the VIC
Post Reply
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Squeeze and Sub howto....

Post by nbla000 »

I'm working on a disk conversion of 2 games recently discovered but only in tap format: "Squeeze" (Vic-20 Qix variant) and SUB

I've 2 different problems.

Squeeze:
I've load the first part and the program fill itself to the address $0100 $0113 to load the second part and start it from $10B0, I've set a break point ad $0113 and when the second Part is loaded i've saved in the Vice monitor the first part in a file:
save "part1" 8 $0100 $0113

0100 A2 01 LDX #$01
0102 A0 00 LDY #$00
0104 20 BA FF JSR $FFBA
0107 A9 00 LDA #$00
0109 20 BD FF JSR $FFBD
010c A2 00 LDX #$00
010e A0 10 LDY #$10
0110 20 D5 FF JSR $FFD5
0113 4C B0 10 JMP $10B0

and and a second part to another file:
save "part2" 8 $1000 $1eff

The second part file has the same dimension of the original 2.nd part file but it's different, in any case if i load "part1",8,1 and SYS256 it work loading the second original part from tape (not my dump), if i change the first 0100 byte from 01 to 08 the program exit. I think that the program do a simple LOAD"",1,1 without name and my change do a LOAD"",8,1 so there is an error, may i set the file name to load in any mode?

SUB:
The problem for this game it's very strange, it's a stand alone file stored in a TAP image without name, when i try to save it to a disk after the LOAD and before the RUN i get an out of memory error, so using an 8k expansion, i load"",1,1 it and save"sub",8,1 it but when i load the program from disk doesn't work.
I've tried without expansion to load the program and before run in the VICE monitor i've saved the memory to a file:
save "sub" 8 $1000 $1dff
starting it with SYS4109 the problem it's the same, doesn't start.

100d 6C 36 DD JMP ($DD36) <=== what does it do?
1010 A9 57 LDA #$57
1012 8D 96 03 STA $0396
1015 20 D0 12 JSR $12D0
1018 A9 0A LDA #$0A
101a 8D 04 17 STA $1704
101d A9 00 LDA #$00
101f 85 A1 STA $A1
1021 A5 A1 LDA $A1
1023 C9 02 CMP #$02

Click HERE to get "SQUEEZE" or HERE to get "QUIX" a renamed version of SQUEEZE.

Click HERE to get "SUB"
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

When you load a file from disk, you must supply a file name. The routine to set up a file name is SETNAM ($FFBD) called with a pointer to the file name string in X/Y (low/high) and the file name length in A.

I'm a bit busy right now to help you with the other questions, but perhaps in a week.
Anders Carlsson

Image Image Image Image Image
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

i've changed the loader according to your infos and this is the result:

LOAD "QUIX 1",8,1:SYS256
0100 A2 08 LDX #$08 <== the drive ,8 not ,8,1 right?
0102 A0 00 LDY #$00
0104 20 BA FF JSR $FFBA
0107 A9 06 LDA #$06 <== the string length
0109 A2 1A LDX #$1A
010b A0 01 LDY #$01 <== The pointer address $011A
010d 20 BD FF JSR $FFBD
0110 A2 00 LDX #$00
0112 A0 10 LDY #$10 <== $1000 the address where load?
0114 20 D5 FF JSR $FFD5
0117 4C B0 10 JMP $10B0
011a 51 55 EOR ($55),Y QU
011c 49 58 EOR #$58 IX <=== the 2nd part name
011e 20 32 00 JSR $0032 2

Now vic says
SEARCHING FOR QUIX 2
VERIFYING <=== ?!?! Why VERIFY and not LOAD what's wrong?
tlr
Vic 20 Nerd
Posts: 567
Joined: Mon Oct 04, 2004 10:53 am

Post by tlr »

nbla000 wrote: Now vic says
SEARCHING FOR QUIX 2
VERIFYING <=== ?!?! Why VERIFY and not LOAD what's wrong?
You need to set the accumulator to $00 before the $ffd5 call. Any other value will do verify instead of load.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

Many thanks to all Denial users for the Vic-20 Community support.

According to yours info i've fixed the first part and using a loader now you may start Squeeze from any drive 1/8/9/10/11

Here you may found Squeeze and other tape-games fixed to run on floppy!!!!


Now i'm working on SUB disk conversion, i've not found in any place the original game someone remember the original name?

I know that SUB isn't the best game ever made for the Vic-20 but i remember it when i was 11/12 years old and so i want to preserve it.
Last edited by nbla000 on Tue Aug 01, 2006 2:37 am, edited 1 time in total.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

SUB Now Works from Floppies!!!
It's incredible, here is my work, i hope may help someone.

As first thing i've loaded in vice the game from the floppy
before of RUN i went to the monitor and saved the screen memory too
save "sub" 8 $1000 $1fff

loading this image ",8,1" of 17 blocks instead of 15 obviously at the end
i've observed that in the screen, there was the loading script of the file loaded from tape instead of floppy

LOADING
FOUND
READY

instead of

LOADING
FOUND SUB
READY

so using RUN or SYS4109 the game start from floppy.

I investigated about and i've discovered that the game when start look on the screen memory for the character Dec(96) Hex(60).
Actually if you load sub from tape and after RUN the game start but if you load sub from tape and after you clear the screen and RUN the game doesn't start, but if you type POKE7680,96 (screen memory location of the up-left corner) and after RUN the games it ok!!!!

Incredible i think i'm very lucky and a little perseverant too!!! ;-)

Here now you may found Sub too!!!!

PS: If someone remember/has the original version i may fix it too, tell me.
Post Reply