Jump to content



0

Visual bB is being mean and stupid!


12 replies to this topic

#1 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 2:24 AM

When I try to compile the following, this is what I get:

Quote

--- Unresolved Symbol List

fontcharARISIDE 0000 ???? (R )

fontcharHEART 0000 ???? (R )

fontcharMRHAPPY 0000 ???? (R )

fontcharBLOCK 0000 ???? (R )

fontcharUNDERLINE 0000 ???? (R )

bmp_48x1_1_index 0000 ???? (R )

fontcharCOPYRIGHT 0000 ???? (R )

score_kernel_fade 0000 ???? (R )

fontcharCOLON 0000 ???? (R )

fontcharDOLLAR 0000 ???? (R )

fontcharARIFACE 0000 ???? (R )

fontcharMRSAD 0000 ???? (R )

mk_gameselect_on 0000 ???? (R )

fontcharSPADE 0000 ???? (R )

fontcharSPACE 0000 ???? (R )

0.reboot 0000 ???? (R )

0.title_vblank 0000 ???? (R )

fontcharsHEX 0000 ???? (R )

fontcharCLUB 0000 ???? (R )

mk_96x2_1_on 0000 ???? (R )

mk_48x2_1_on 0000 ???? (R )

scorefade 0000 ???? (R )

mk_96x2_2_on 0000 ???? (R )

mk_48x2_2_on 0000 ???? (R )

mk_48x1_2_on 0000 ???? (R )

fontcharFUJI 0000 ???? (R )

fontcharDIAMOND 0000 ???? (R )

mk_96x2_3_on 0000 ???? (R )

mk_48x2_3_on 0000 ???? (R )

mk_48x1_3_on 0000 ???? (R )

fontcharPOUND 0000 ???? (R )

I'm assuming this has to do with the title screen kernel because I know what all those fontchars are, they're in the titlescreen kernel, but why are they in a list of unresolved symbols if they're in there to begin with?! Anyone else have this problem? This is not the first time this has happened, either. It also spat out a binary file that's 1.99k.

Attached Files



#2 SeaGtGruff OFFLINE  

SeaGtGruff

    River Patroller

  • 4,545 posts
  • Location:Georgia, USA

Posted Thu Jun 9, 2011 4:08 AM

I haven't checked your bB source yet, but whenever this sort of thing happens to me, it's usually because I used a variable name or line label that I forgot to add to my program-- such as "gosub mysubroutine" but I forgot to add "mysubroutine," or maybe because I changed its name without changing all the places where I refer to it.

I'll compile your source and look at the assembly listing to see what I can find out.

Michael

#3 SeaGtGruff OFFLINE  

SeaGtGruff

    River Patroller

  • 4,545 posts
  • Location:Georgia, USA

Posted Thu Jun 9, 2011 5:04 AM

Okay, apparently I never installed the titlescreen kernel with bB 1.1, so after I fixed that issue (which included modifying both your program and the titlescreen.asm file to change all the slashes to backslashes, and to change the path for the titlescreen includes), I was able to compile and see the problem.

It looks like you have two problems. One is that the following line doesn't compile correctly:

 if player0x>120 then reboot : rem go to level 2, which I haven't designed yet. 
The "reboot" command seems to be broken here, because bB is trying to branch to a label named ".reboot" that doesn't exist. Oddly enough, the following line does compile:

 if e{4} then reboot
It looks like the bB compiler needs to be fixed to handle the first case correctly. That's a problem for batari to fix. In the meantime, you can work around that issue by replacing the problem line with the following code:

 if player0x<=120 then continue
 reboot : rem go to level 2, which I haven't designed yet. 
continue
But then you run into the second problem, which is that the code (including all the includes) is too large, so the ROM ends up being "reverse-indexed." It looks like you'll need to add another bank to fix that.

Michael




#4 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 7:47 AM

I fixed those problems and it's still giving me the same output. I changed all the "reboot"s to "goto title", which is where the title screen is located.

#5 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 7:49 AM

d'oh! Forgot to add "set romsize 8k." Silly me. It does work now, but I can't change the background color in the title screen to black. It ends up being blue for some reason.

Edited by atari2600land, Thu Jun 9, 2011 7:51 AM.


#6 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jun 9, 2011 9:04 AM

Try adding the titlescreen to the beginning of a new bank.

From the docs...

    Q: My colors are all weird. What caused this?

    You're probably using too many screen lines. The Titlescreen Kernel can display
    ~85 lines using 2-line minikernels, or about ~170 lines using 1-line minikernels.

    Also, sometimes dasm seems to wrongly indentify the color labels in the
    minikernel image files, when code shifts in one of the assembler passes. Make
    sure that the Titlescreen Kernel is the first thing in the bank to avoid this.


#7 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 9:22 AM

View PostRevEng, on Thu Jun 9, 2011 9:04 AM, said:

Try adding the titlescreen to the beginning of a new bank.
That didn't help at all. I tried setting pfcolors, I tried doing COLUBK=0, I tried COLUPF=0. I'm wondering if this has something to do with the fact that I'm using const player0colors=1

Attached Files



#8 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jun 9, 2011 11:51 AM

The include itself has to be at the top of the bank, without any of your basic code before it.

So instead of this...
  bank 2
title
 if joy0fire then goto level_1
 scorecolor=14
 CTRLPF=$03
 gosub the_title_screen_part_2
 goto title
the_title_screen_part_2
 asm
 include "titlescreen_kernel_10/titlescreen/asm/titlescreen.asm"
end
 return

...do this...

  bank 2
 asm
 include "titlescreen_kernel_10/titlescreen/asm/titlescreen.asm"
end
title
 if joy0fire then goto level_1
 scorecolor=14
 CTRLPF=$03
 gosub titledrawscreen
 goto title


#9 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 5:45 PM

It still doesn't work. What do I need to do? Define the pfcolors individually, or just put COLUBK=0 in there? I tried both.

#10 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jun 9, 2011 6:08 PM

Can you zip up the titlescreen you used? The ad-hoc one I used to test worked out fine.

#11 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 6:25 PM

Here. I also put in my settings for the title screen. I wanted to use more spaces, but if I did, Stella would think it's a PAL game and flash.

Attached Files



#12 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jun 9, 2011 6:38 PM

I'm not sure what's going on, but I get a black titlescreen on my end. Are you using a fresh copy of the titlescreen kernel?

Here's a zip of everything from my end, including a binary.

Attached File  mremagin8-RevEng.zip   26.25K   15 downloads

#13 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jun 9, 2011 6:53 PM

Finally! I guess I didn't have the latest titlescreen build. Well, anyway, thanks to you and SeaGtGruff for helping me with this. Now I know what to do whenever it gives me a long, red, list of stuff the program doesn't recognize.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users