Macro

Members
  • Content count

    12
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Macro

  • Rank
    Member

Profile Information

  • Gender Not Telling
  1. Thats because the original circuit uses two 4 bit ram chips Some of the people who create these FPGA versions want them to be identical to the original board (such as this), whereas others (include me in this block) are happy to make it functionally identical - what difference is it going to make to playing the game if it uses one 8 bit ram block instead of two 4 bit ram blocks.
  2. You would probably have to use some sort of SPI based flash for the roms due to the lack of IO ports - to add the C64 roms would need 8 IO's for the data lines, and then another 15 for address lines. be easier to get a Papilio+ and use that instead
  3. and here are the roms with galaxian style names, so that the build_rom script will prepare the correct combined files and vhd files. They should also work on a real galaxian PCB, although I have not tested that bit (yet) MrDoNightmare.zip
  4. Had a look through the changes I made to see what was actually needed, and it seems to boil down to a couple of changes in the galaxian_top.vhd file only, to add in the extra controls for up and down. In the entity, the signals associated with two of the ports have changed (*) to pass in UP and DOWN mc_inport : entity work.MC_INPORT port map ( I_COIN1 => not C1, -- ACTIVE HI I_COIN2 => not C2, -- ACTIVE HI I_1P_LE => not L1, -- ACTIVE HI I_1P_RI => not R1, -- ACTIVE HI I_1P_SH => not J1, -- ACTIVE HI I_2P_LE => not U1, -- ACTIVE HI * I_2P_RI => not D1, -- ACTIVE HI * I_2P_SH => not J2, -- ACTIVE HI I_1P_START => not S1, -- ACTIVE HI I_2P_START => not S2, -- ACTIVE HI I_SW0_OEn => W_SW0_OEn, I_SW1_OEn => W_SW1_OEn, I_DIP_OEn => W_DIP_OEn, O_D => W_SW_DO ); further down, commented with the BUTTONS as below, these 5 lines have changed to remove the NOT from each line, and then to map the signals for UP and DOWN --------- BUTTONS --------------------- U1 <= I_SW(0); D1 <= I_SW(1); L1 <= I_SW(3); R1 <= I_SW(2); J1 <= I_SW(4); n.b. not sure why I needed to swop L1 and R1 over - is the UCF correct in the first place (haven't checked yet) - I'd better try galaxian and see I'll post the roms in a while, just need to chop them into galaxian sized chunks!
  5. One of my friends (Crazy Ivan) wrote a game to run on galaxian hardware a while back (I did a galaxian multigame), and he is happy for it to be made available to run on FPGA's I had to make some minor changes to the controls to make it playable, but here is the bit file to let you play Mr Do's Nightmare on your papilio one with arcade megaboard. Once I get a chance to make sure i only changed the control mapping, I'll put up the changes so you papilio+ owners can play it as well. mr-do.zip
  6. ok, quick alteration to swop X/Y over and invaders the 'normal' way up to save you tilting the screen. VGA_Invert.zip
  7. It may look a little squashed, but shouldn't be hard at all let me have a look and see ...
  8. I was hoping to clean this up a bit, but not had a chance yet, so here in case anyone wants to play ... you need to lose dblscan.vhd from the project (the original scan doubler) and add the following source, VGA_Invert.vhd - this uses the same interface (was one of the limitations I set myself), but you will also need to generate a memory core to go with it - this needs to be called u_invert and have the following characteristics simple dual port ram write width 2 write depth 65536 ram A write first use ENA pin ram B write first always enabled with that added, then it should synthesise OK and work for you. there are 2 'magic numbers' in the source that I used to centre the screen on my monitor - the original doubler has the picture way off to the left - your monitor may be different and need these changing. -- -- Output Screen Positioning -- constant Horizontal : natural := 140; constant Vertical : natural := 268; the vertical one counts backwards, so needs to be > 244 (the number of vertical pixels) VGA_Invert.zip
  9. I have the source code (and hence rom images when I get it assembled) for a game that runs on galaxian hardware written by a friend. He is OK for them to be made available, so let me get it sorted and I can post it up here (or work out how github actually works!) I also have an alternate raster doubler for invaders that inverts the picture to the same as normal ways, it has a couple of 'magic numbers' in to centre the screen that I don't totally understand why they need to be the values I use, but if you are OK with that and still need it, then I can upload that as well.
  10. Sound tested, that seems to work OK. reading up on the vic, it seems that the video signal is not quite the correct timing, even for normal 15Khz, so by the time that has been pixel doubled, you still end up with a signal that is not quite the right timing. I'm now going to make up a VGA-SCART lead so I can try the 'normal' VIC screen mode and see how that goes. I'm glad I decided not to use the video circuitry for my other project, and just created a proper VGA mode that draws the correct things - gives a far more stable display.
  11. Yes, memory will become a problem eventually, if I can fill the block ram (almost) with a vic20, it's certainly not going to fit a BBC or C64 in there. have to look into that one day. (but should not affect my other project which predates the vic) anyway, hopefully here's the files you need to add or change to the release 002 from the FPGA arcade page. The clock is currently set at 52Mhz (rather than 50Mhz as expected by the design) because with it at 50Mhz I do not get a screen display on VGA - it claims the frequency is too low (30.6Khz, 49Hz) - the minor boost gives me a screen display, but may affect compatibility with some programs. I will play with this to see if there's a better setting. apart from that, finally got the joystick working (I didn't realise the ground pin wasn't hard wired!) so, video, keyboard and joystick tested, not tested the sound, but then not changed it either, so hopefully that works! there's a couple of constants in the vic20 code to enable/disable the double scan and the cartridge. as per Mike's instructions, you need to get the roms from somewhere and put them in the roms folder, and also put the cartridge binary as cartridge.bin (most of the carts I found had two extra bytes at the beginning that need to be removed first) Papilio-Vic20.zip
  12. As a part of a project to get me into VHDL, I've converted the Vic20 project from Mike's FPGA pages for the papilio and arcade wing. (actually I just wanted to make sure I understood how the 6522 component worked, because I need to use it) still doing some testing, but it's giving me screen output, cartridge is working (used some spare BRAM since the Papilio doesn't have any external memory) - just need to test the joystick and sound. if anyone wants it let me know and I'll send the files you need to change from his version.