Search found 125 matches

by Weber G
Tue Jan 12, 2021 7:46 pm
Forum: Developer's Heaven
Topic: C64 BT2: file - track/ sector list
Replies: 9
Views: 3278

Re: C64 BT2: file - track/ sector list

Do you understand that code? Check what's in $E0 and $D4 and follow each command, then you will know how it works to identify and compare the disk numbers.

I can not explain you all the code... that would go beyond the scope...
by Weber G
Tue Jan 12, 2021 5:33 pm
Forum: Developer's Heaven
Topic: C64 BT2: file - track/ sector list
Replies: 9
Views: 3278

Re: C64 BT2: file - track/ sector list

How does it know which disk it wants?
Check the code beginning with $1CDC.
by Weber G
Tue Jan 12, 2021 2:22 pm
Forum: Developer's Heaven
Topic: C64 BT2: file - track/ sector list
Replies: 9
Views: 3278

C64 BT2: file - track/ sector list

Since BT2 (C64) has a track/ sector loader, there are no file names in track 18 of the disks. If someone is interested in, here is the file - track/ sector list: # track sector load address disk comment 00 3 0 9000 0 combat 01 5 0 9000 80 non combat 02 1 0 EAEA 3 03 7 6 EAEA 80 04 1 0 C400 80 dark d...
by Weber G
Sat Jan 09, 2021 1:30 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

No idea where you are? Is the addressing correct? The following code is at 95B3: .C:95a0 20 06 08 JSR $0806 ;text output .C:95a3 4C AD 95 JMP $95AD .C:95a6 A0 AF LDY #$AF ;.@@ .C:95a8 A2 11 LDX #$11 .C:95aa 20 06 08 JSR $0806 ;text output .C:95ad 20 48 08 JSR $0848 .C:95b0 20 E2 A9 JSR $A9E2 .C:95b3...
by Weber G
Fri Jan 08, 2021 2:28 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

You will have no success if you only use DirMaster. Please use Vice! These are two different things. The loader in your link is, as far as I can see in short, the autoloader which starts a game. But to load from disk, BT2 has it's own 'loader' which loads from disk to the RAM. The latter is of inter...
by Weber G
Fri Jan 08, 2021 2:05 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

Which tool do you use? You don't have to decipher the code. There are tool which can do this in seconds. I didn't know this bard singing variables. But after I have taken a look at the DOS code from drifting, I tried it => let the bard sing, set a break point and check the variables and also the mem...
by Weber G
Fri Jan 08, 2021 10:59 am
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

drifting, you are completely right. The DOS version with its texts could help a lot, since the logic behind seems to be similar to the C64 version. I'm always wondering what's stored in the zeropage $F6/ $EA. Now I know it: first lines of the C64 combat engine (finally with the knowing of $F6/ $EA):...
by Weber G
Thu Jan 07, 2021 9:08 am
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

Oh, sorry! That wasn't my intention. Just wanted to speed up the analysis of the combat engine. It will be faster analysed when two work on it.
And I didn't need 10min but some hours to build that file.
by Weber G
Thu Jan 07, 2021 12:13 am
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

No problem. Maybe it was done like I did in the attached file. I have decoded the combat engine and packed it back in the d64 file and added a file name 'combat'. Track 18 is very empty, so there is a lot of space for file names. Now you have the disassembled combat engine and can go on to investiga...
by Weber G
Wed Jan 06, 2021 5:20 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

As I mentioned above, the destination address is stored in the first block at position $02 and $03.

In this case, it's EA and 7A.

XORed with EA it's $9000.

Image
by Weber G
Wed Jan 06, 2021 3:54 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

This file is the combat engine. It starts at $9000. The first lines: .C:9000 4C 09 90 JMP $9009 .C:9003 4C DD 9E JMP $9EDD .C:9006 4C 05 A4 JMP $A405 .C:9009 20 93 08 JSR $0893 .C:900c A5 F6 LDA $F6 .C:900e 85 EA STA $EA .C:9010 20 14 09 JSR $0914 .C:9013 20 DC 95 JSR $95DC .C:9016 20 D3 A7 JSR $A7D...
by Weber G
Tue Jan 05, 2021 4:08 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

Have you already checked the BAM of these disks? The game itself doesn't load the disk data by using file names.
by Weber G
Tue Jan 05, 2021 2:52 pm
Forum: Developer's Heaven
Topic: C64 BTII: FILE0278460.PRG (CHAR DISK)
Replies: 38
Views: 11233

Re: C64 BTII: FILE0278460.PRG (CHAR DISK)

Ok, this is a very interesting topic, so I spent some hours to investigate the loader of BT2. It's a track/ sector loader with direct access to the serial interface to the 1541 via CIA $DD00. No kernal functions are used. It's a completely programmed loader which loads bit by bit (not byte by byte)....
by Weber G
Wed Dec 30, 2020 12:44 am
Forum: Developer's Heaven
Topic: CBM64 Bard's Tale 1 Disassembly
Replies: 154
Views: 133380

Re: CBM64 Bard's Tale 1 Disassembly

It seems that for BT2 (C64), each spell has it's own routine. There is a address table for spells: >C:7af3 d1 4c 8e 4d 20 5e 5c 5d 33 5b 4b 56 d1 4c fd 5a .L.M ^\]3[KV.L.Z >C:7b03 c8 57 b9 52 4b 56 d1 4c c8 57 b9 52 fd 5a 4b 56 .W.RKV.L.W.R.ZKV >C:7b13 ac 5b a5 5e b9 52 22 5b 4b 56 e1 59 2a 4d 22 5b...
by Weber G
Tue Dec 22, 2020 5:57 pm
Forum: Developer's Heaven
Topic: C64 BTII: BEASTIARY ENTRY BREAKDOWN
Replies: 4
Views: 3187

Re: C64 BTII: BEASTIARY ENTRY BREAKDOWN

I found the following out of the code (BT2 C64): ###monster table### byte 00 - FF ;name byte 10 - 13 ;used for hitpoint creation ;byte 12 and 13 are the min hipoints ;but all four bytes are used for max hipoints calculation byte 14 ;# of monsters calculation ;the following table is used: ;byte 14 ma...