Jump to content

Recommended Posts

I've just installed this as a complete beginner and am testing it out with the Hello World example.  I ran into a few issues:

  • I needed to add C:\colecodev\bin to my PATH (via Environment Variables) to get it to work in Windows 10.  It wasn't clear to me in the Wiki instructions that this needed to be done.
  • The build_pvcollib.bat didn't work until I did the above.  Is this step still necessary as the lib folder does already include collib.lib and crtcol.rel ?
  • When making the Hello World example I get an error.  The output is as follows:
    > "make" 
    Compiling C to .rel ... helloworld.c
    sdcc -mz80 -c -I/c/PVcollib//include -I/c/PVcollib/devkitcol/include --std-c99 --opt-code-size --fverbose-asm --max-allocs-per-node 20000 --vc   -I/usr/coleco-examples/helloworld/  helloworld.c
    Linking ... helloworld.rom
    sdcc -mz80 --no-std-crt0  --code-loc 0x8048 --data-loc 0x7000   /c/PVcollib//lib/collib.lib /c/PVcollib//lib/crtcol.rel  helloworld.rel 
    sdobjcopy -R .sec5 -I ihex -O binary --pad-to 0xffff --gap-fill 0xff crtcol.ihx helloworld.rom
    /bin/sh: grep: command not found
    "make": *** [/usr/coleco-examples/helloworld/helloworld.rom] Error 127

Despite the above error, the helloworld.rom is created and does work.

Share this post


Link to post
Share on other sites

The grep command is only to present you the size of CODE, DATA segments. It seems that you do not have it on your computer, I will add it to the minimal command package I zipped with the installation.

It is strange that you need to add bin directory to your path, I do not have this issue with my Win XP virtual machine ...

Share this post


Link to post
Share on other sites
15 hours ago, alekmaul said:

The grep command is only to present you the size of CODE, DATA segments. It seems that you do not have it on your computer, I will add it to the minimal command package I zipped with the installation.

It is strange that you need to add bin directory to your path, I do not have this issue with my Win XP virtual machine ...

Yeah, I don't have grep on my computer.  I'm guessing the optional Unix package you suggest would have installed it but I opted to not do that.

 

I'm on Windows 10 64-bit but to be honest didn't pay that close attention to exactly what I did to get it working.  I guess if I have to reinstall in the future I'll pay closer attention and confirm if that path statement is definitely needed or not.  Windows 10 is a strange and fickle beast.

Edited by Ikrananka

Share this post


Link to post
Share on other sites

New version 1.5.1 is now available here:https://github.com/alekmaul/pvcollib

Here is the changelog:

  • Add bunny example (thanks Amy Purple for sharing this game)
  • Fix Makefile to add sys_choice and vdp_putvram_reapeat <_< (stupid I was ...)
  • Add vdp_putvram_repeat to repeat some chars n times on screen (thanks Amy Purple for this function)
  • Add sys_choice function to choose a key on joypad (thanks Amy Purple for this function)
  • Remove docs content (useless)
  • Add graphic mode 1 example
  • Add vdp_putarea function
  • Add default sprite address 0x3800 in mode 2
  • Add spr_updatefast funciton without changing order
  • Change palette for f18a from bytes to words
  • Add sys_memcpyb to copy memory byte per byte
  • Add snd_mute variable to mute background sound playing (if you have another sound engine)
  • Change vdp_disablescr & vdp_enablescr with flag for nmi
  • Add vdp_getvram function
  • Like 2

Share this post


Link to post
Share on other sites

Just installed and was playing with this.

 

I got the hello world to work fine

the 3 f18a samples worked fine including the scrolling demo.

the 2 games bunny & diamond compiled fine with sound

mode1plecompress rom compiled and worked fine.

 

the sprite simple and animated samples compiled but gave black screen

the music and simple sound comiled but gave me black screen & no sound.

the bitmap megacart sample comipled to 128kb displays the first image but won't doing anything else despite pressing left right buttons etc. also I had to correct the the graphic table names in the megacart.c file by adding gfx to the end of eech (    vdp_dan2vram (TILimage3gfx, chrgen); // characters) then it works. I'll play with it a bit more see if I can get the other 2 images to display.

 

Looking very promising.

 

I copied the bin folder also inside the pvcollib to the root directory before compiling and that worked.  c:\colecodev

 

I'm going to play with it a bit more.

Edited by digress

Share this post


Link to post
Share on other sites

thanks for your tests @digress, I will investigate the blacks screens. That's strange but I think it is because I did them a long time ago and I forgot regression tests because I use pvcollib for each game I make without any issue :( ...

For all community information, @newcoleco is working a lot to port some of her games she did a long time ago to pvcollib to have more examples to help us using pvcollib :)

She is also working with me to improve pvcollib and add some functions!

 

Edited by alekmaul
  • Like 2

Share this post


Link to post
Share on other sites

@newcoleco is one of the very best. 

 

@tursi also added a nice fix to the previous coleco libraries that was causing video corruption to happen as there was a interupt still happening even if you had the nmi_diabled which caused me continual headaches. I really don't know what he did but I would like to make sure that it was addressed.

 

His fix has worked ever since in the old library from @newcoleco i've been using. It was discussed here. Looks like you previously seen it too.

 

 

Share this post


Link to post
Share on other sites
On 9/23/2020 at 4:06 PM, digress said:

@tursi also added a nice fix to the previous coleco libraries that was causing video corruption to happen as there was a interupt still happening even if you had the nmi_diabled which caused me continual headaches. I really don't know what he did but I would like to make sure that it was addressed.

 

His fix has worked ever since in the old library from @newcoleco i've been using. It was discussed here. Looks like you previously seen it too.

 

 

Yeah, I also manage some code about VDP corruption, and you have two functions you need to use to update VDP OUTSIDE of NMI routine :

Quote

vdp_blocknmi();

and

Quote

vdp_releasenmi();

 

  • Like 1

Share this post


Link to post
Share on other sites
On 9/23/2020 at 8:06 AM, digress said:

@tursi also added a nice fix to the previous coleco libraries that was causing video corruption to happen as there was a interupt still happening even if you had the nmi_diabled which caused me continual headaches. I really don't know what he did but I would like to make sure that it was addressed.

While I made a lot of changes, mostly I was focused on reducing the assumption that it was safe to access the VDP outside of the NMI. I can't remember what state my own lib was in at the time but ISTR I mostly ported the NMI handling from there.

 

10 minutes ago, alekmaul said:

Yeah, I also manage some code about VDP corruption, and you have two functions you need to use to update VDP OUTSIDE of NMI routine :

 

These look like they should do the trick to me! But I see you also have enablenmi and disablenmi, and that this is what the Diamond example uses. This seems to work via the BIOS functions. I didn't trace into what they do since I don't use the BIOS.

 

I think some influence must have come from my lib, since I appear to have a comment in crtcol.s! 😎

 

 

Share this post


Link to post
Share on other sites

I know you also created a really great Coleco emulator with debugging call EmulTwo.

 

I followed a link on github that has a new version with ADAM support which looks amazing but that is dated from April.

 

Any news on the updates?

Edited by Mike Harris

Share this post


Link to post
Share on other sites
On 9/25/2020 at 6:22 AM, Tursi said:

I think some influence must have come from my lib, since I appear to have a comment in crtcol.s! 😎

 

 

you're right and I don't think I credit you about that, my mistake :/.

I updated readme.md with a link to your website :)

Regarding EmulTwo, i will work on it again to add more Adam support and update some screens for programmers. 

Edited by alekmaul
EMultwo

Share this post


Link to post
Share on other sites
16 hours ago, alekmaul said:

you're right and I don't think I credit you about that, my mistake :/.

I updated readme.md with a link to your website :)

It's quite all right! I'm happy to have made an impact, however small. :)

 

My lib is released public domain, so you have no obligation with respect to it whatsoever. I did that on purpose, feel free! :)

 

Share this post


Link to post
Share on other sites
On 9/21/2020 at 11:22 PM, digress said:

I got the hello world to work fine

the 3 f18a samples worked fine including the scrolling demo.

the 2 games bunny & diamond compiled fine with sound

mode1plecompress rom compiled and worked fine.

 

the sprite simple and animated samples compiled but gave black screen

the music and simple sound comiled but gave me black screen & no sound.

the bitmap megacart sample comipled to 128kb displays the first image but won't doing anything else despite pressing left right buttons etc. also I had to correct the the graphic table names in the megacart.c file by adding gfx to the end of eech (    vdp_dan2vram (TILimage3gfx, chrgen); // characters) then it works. I'll play with it a bit more see if I can get the other 2 images to display.

 

I copied the bin folder also inside the pvcollib to the root directory before compiling and that worked.  c:\colecodev

 

Hi @digress

You need to run the .bat file to install pvcollib in c:\colecodev (take a look at wiki for explanantions), I don't think you need to copy the bin folder :(

 

Regarding the samples you tested, I updated them and now they worked. I pushed the updates on github (only some fix with enablenmi and gfx names) but not yet released a new version

I'm waiting for new feature we are currently working on with @newcoleco

 

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...