mein CBM 8032 (No. 2) mit Commodore High Speed Graphik

  • Ok I have sound now and produced my own IRQ service as a result. The issue is coming up with the right sound for hitting an asteroid..


    Has anyone created a short set of numbers that sounds good for a hit ?


    Andy

  • I maybe able to do a 512x256 version … will see how difficult it is by diividing the y axis cords by a further 2 (the arcade game was 1024x1024). May then blue able to do screen memory switching ….. which is what the arcade version does.

  • but would be cool nevertheless. if not only for the better refresh rate :3

    Wasn’t too difficult to port to the 512x256. You do notice a small difference in terms of increased speed probably down to the fact it takes two frame cycles to clear the 512x512 memory and only 1 for the 512x256 …. but both versions are playable. The small saucer is a little too small but not going to play around with that.

  • I have slightly optimised the 512x512 version - if you want try this version. The bullet range is reduced slightly but it means you can fire more frequently rather than waiting for the bullets to disappear off the screen. I reduced the keyboard scan routine also to gain a bit of fractions of time.


    Fixed a bug where sometimes the Saucer sound doesn't turn off properly when destroyed at the edge of the screen. Will continue to look for optimisations but will only be small ones now. The rate limiting thing is the CPU speed processing the asteroid locations etc.


    Will publish the 512x256 version when done more testing.


    asteroidsva.zip

  • What's the screen resolution for that board ?


    The HSG draws lines fast using vector based algorithms and coordinates - so all I do is send the deltaX/Y to the board with the direction of the vector and it does the line calculations and line drawing. I am not sure how your board works as not dug into it.


    The Arcade DVG uses clever scaling ratios to make the asteroid smaller and smaller still for example so you have to do that in the code as the HSG board doesn't do that. Drawing and erasing may become a challenge for a large number of astroids as the rate determining part could be the 6502.


    Do you have memory page swapping capabilities like the 512x256 board - that does help a little ? I did read somewhere about someone disassembling the ELITE code for Apple and that used EOR Line drawing techniques.


    "Lines are drawn with a read-XOR-write sequence. XOR (exclusive-or) flips the state of each drawn pixel, so plotting a pixel on a black background results in a white pixel, while plotting on a white background results in a black pixel. If you draw two white lines that cross each other (like an 'X'), the middle pixel will be black. This approach allows you to erase a line by drawing it twice, and means that it doesn't matter in what order you draw and erase overlapping lines.

    When animating a moving 3D shape, the obvious approach is to draw it, then erase it, then draw it again in its new position, and so on. Drawing lines is a fairly expensive operation, so doing this without page-flipping would result in a fair bit of flicker: the time required to erase all of the lines would be a substantial fraction of the screen refresh time, so the computer would display nothing but black for that cycle."


    Elite Disassembly

  • I'll try to test at friday evening.

    I just tried. VERY NICE! But I have questions... :)


    I got two EF9365 and with both of them the score and the lives in the top left corner do not appear as they should I think.


    They flicker up when an asteroid is near them. The rest of the time they don't show up.


    Are my EF9365 broken? Both? Or is this an known effect?


    The video posted at the beginning of the month looked different.



    I forgot to say: I switched the jumper for EF9365 instead of EF9366 from "B" to "A". And a little basic test program works fine with the "new" EF9365.

  • The v9958 can use 256x212 or 512x212. Line drawing is in hardware like the hsg does. I would try to use colors and not xor. A 710 with 2mhz is much faster than a 8032 and i think the 9958 is faster than the old thomson chip.

    On a arcade machine with vector graphics or a vectrex its much easier because you only draw and have never to delete something ;)

  • No the score and spare ships have always shown up fine. I think Matthias was able to run fine also. I can’t comment on the EF9365 being broken. But what you describe is odd. The score is written text positioned at those locations. Could do a test version where I drop it a line but to me points to something else. I can post the VB version to see if that plays ok ?


    One test could be to display a bitmap image and see if it displays ok …. Also is this an original board ?


    On final thought is do you have the board connected to an external display ? Assuming you are using a 8032


    Andy

  • OK attached is a zip file with two versions


    VA = Version A board 512 x 512

    VB = Version B Board 512 x 256


    Business Keyboard.


    I have a version that uses the graphics keyboard which is where my Version B board is installed.


    tested them this morning - for the 512x512 board I do have slight flicker around the score and spare ship count (that’s normal for this board) but they appear just fine. Also they appear on the external monitor. I do not know if your CRT is simply too fast as the 512x512 needs a slower response monitor due to its refresh rate causing flicker etc..


    asteroidsvab.zip

  • Hi, Andy.


    No the score and spare ships have always shown up fine. I think Matthias was able to run fine also. I can’t comment on the EF9365 being broken. But what you describe is odd. The score is written text positioned at those locations. Could do a test version where I drop it a line but to me points to something else. I can post the VB version to see if that plays ok ?

    I'll give it a try. Thank you.


    One test could be to display a bitmap image and see if it displays ok …. Also is this an original board ?

    No, not original. It's this one: https://github.com/InsaneDruid/Low-Speed-Graphik


    I got the board and the GAL for U11 from CBM_Ba . I think he uses a similar board. But...Hm? The U11-replacement is a hack-alike thing originally soldered by Toast_r when I remember right. Perhaps that's the problem? So far I just did some more or less static drawings on this board:




    When I look at the last one: It's drawn double-buffered the the EF9366. And there is a flicker, too!


    On final thought is do you have the board connected to an external display ? Assuming you are using a 8032

    Yes 8032. And no external monitor.


    tested them this morning - for the 512x512 board I do have slight flicker around the score and spare ship count (that’s normal for this board) but they appear just fine. Also they appear on the external monitor. I do not know if your CRT is simply too fast as the 512x512 needs a slower response monitor due to its refresh rate causing flicker etc..

    I'll test and will try to take a video...


    Thanks, Torsten

  • Hi Torsten


    Just so you know The VA version hasn't been changed .... I can do that for you via the messaging to avoid confusion of versions here.


    Try the Vb with the original 512x256 setup to check it works ....


    Does the VA version show the press fire and player 1 text ?


    Andy

  • Does the VA version show the press fire and player 1 text ?

    Yes, these texts show up. But I think they are not shown as they should, too.


    I'll try the new VB and the actual VA and will take photos/videos this evening...

  • O.K., here are the results...


    EF9365 (aka "VA"): Asteroids_8032_VA.zip


    EF9366 (aka "VB"): Asteroids_8032_VB.zip


    Please forgive the trembling. Phone in one hand and trying to play with the other one. This isn't going well... :)


    The "VA"-video looks like there are missing lines? Especially in the text? And the score/ship display at the upper left appears when firing there or an asteroid comes trough.


    The “VB” video looks good. I suspect that's how it's supposed to be. The flickering is greatly increased by the recording. It looks better on the screen.



    Are both of my "new" EF9365 defective? Utsource... We have to talk! ;)

  • Ok … VB is exactly as it should be …


    So what’s the issue with your EF9365… there’s too much graphics breakup .. need to think what that could be as points to the GPU

  • are you able to make hi res plots with the EF9365 around the screen edge and also output test at the top of the screen in basic ?


    I have played quite a bit with it today and all seems good.


    I wonder if it is also related to the CRT in your 8032 - its ability to respond to fast pixel writes .... the refresh rate of the 9365 is around 60hz


    If you can display a bitmap using my bitmap code then we know the GPU/MPU is OK and it's the CRT. The Version B has a different refresh rate (50Hz) hence much clearer and wobble free.

  • are you able to make hi res plots with the EF9365 around the screen edge and also output test at the top of the screen in basic ?

    Something like this?


    189665-img-20240311-202434488-jpg


    This is one of the first tests I did with my card (with EF9366) in: RE: CBM 8032: Mein neues Restaurationsobjekt


    I could to this with the EF9365 tomorrow (oops! today! later! ;) ). Adding some texts around the screen.



    Did you enjoy the game ?

    YEAH! :zock:


    I played the original a lot in the 1980s at our local railway station. There were two arcarde machines: Asteroids and Defender.


    I love them both! :crazy:

  • Try the code on this page