I love this project and would be interested in potentially making my next game for the M65. A upgraded version of my Aviator Arcade game, but utilizing C65 features. Is there a development environment yet (I couldn't find one, but could have missed something). If not what do you think would be the right timing to begin development? Awesome project!!!
Hallo Besucher, der Thread wurde 5,7k mal aufgerufen und enthält 26 Antworten
letzter Beitrag von adtbm am
-
-
Hi and Welcome !
There are currently two ways to develop for the MEGA65.
1. The XEMU/M65 emulator. It is still in development but working. sometimes a bit slow. but like i said: W.I.P. Here is a collection of Binaries
and the link to LGBs (the Developers GitHub page)
Or
2. you can use a NexysA7 FPGA board from Digilant (previousely known as Nexy4DDR), together with a keyrahv2 and use the latest Bitstream from the M.E.G.A. site. Then you can program on the (close to the) real thing !.There is original documentation available for the c65, also on the projects GitHub page you can find a MEGA65 manual W.I.P.
I hope this helps a bit
If you need help or if you have questions, please feel free to ask.
here are some links to some nice MEGA65 Demos (If you haven't seen 'em already...) first, second, third.
-
And here you can find a cross assembler, but don't ask me how to use it. http://www.zimmers.net/anonftp/pub/cbm/src/c65/index.html
-
First, that would be SUPER to have a C65 (or better, MEGA65!) targeted version of your game. We are on the hunt for cool new games for the platform, and maybe that can be bundled for release.
Okay, so for now, we don't have a nice integrated IDE for the MEGA65.
What I use is either:
1. The Ophis assembler, which we have taught how to use the 4510 CPU's new instructions and addressing modes.
or
2. CC65 for mixed C + assembly. This is often easier, but has the downside of not (yet) having good support for the 4510 (unless someone has snuck it in), and the C compiler is not that efficient, and so far, has no C65/MEGA65 memory layout, so for now, I just use the C64 memory layout, and load the programs from C64 mode.
But again, super excited about the prospect of new MEGA65-targeted games, and we are happy to help you in your development experience and answer any questions here, so that you and others who follow have an easier time about it.
LG
Paul.
-
Thanks all. That is a great set of information to get started with.
-
I find assembler of CC65 is quite great environment for asm-only projects as well, surely I mean about ca65 (the assembler part) of we speak on asm-only project. And that's already comparable with Ophis in the sense that it has full opcode support for 4510 (or whatever we want to name it ...). I am not sure but maybe M65-specific things are missing from both of Ophis and CA65 (ie, "32 bit" linear addressing mode and such, so basically everything over the C65 which is M65-specific). CA65 surely is a bit more complex (even for C64) that is, it's a "modern tool chain" ie separate assembler and linker, but this exactly gives its strength too.
CC65: With asm-only project, it's perfectly easy to create a C65-mode BASIC stub loader as well, no problem with that. The problem really, with C-only or C/asm mixed stuff, when there is no standard loader (and library btw) for C65. I have some ugly code here:
https://github.com/lgblgblgb/m…utils/tree/master/c65izer
Basically my intent here is to "glue" this front of any c65 compiled stuff meant for C64 (but in theory any "SYS loader" stuff ... not only created with cc65/ca65), and then you can load that directly in C65 mode, without the need to go to C64 mode (GO64) first. Basically it's just an ugly proof-of-the-concept like workaround, what it does: it programs the hardware to meet the criteria of C64 mode, relocates the appended program where it should be in C64 mode, executes part of the C64 KERNAL needed for initialization and "fakes" a RUN command then. Well, it's really not a nice solution, and absolutely sure, it's MUCH MUCH MUCH worse than writing a proper program which can be natively loaded and executed in C65 mode directly, that's true. I haven't even tested it too much, so you've been warned.
It can be even used as a very crude example how to start a project for C65 mode, btw (asm, basic stub, linker config ...). Again, sorry about the code quality, it's kinda ugly, and also a rather old attempt of mine too.
-
Writing a program for the MEGA 65 is very easy (from the Workflow perspective ). I use the TASS.
1) The Header of your program has to look like this:
Code2) Store it an compile/assemple it like this:
"C:\Users\Sadi\Documents\Eigene Projekte\C64\C65\TASS\64tass.exe" -a --m4510 connect.asm -I ..\lib\ -o a.prg
3) Places it with dirmaster on a d81-image
Done.
-
Wow, great idea, I almost forgot about it, that its author is Hungarian as well (like me) and had some private mailing on it, and also some bugs with 16 bit relative jump opcodes, if I remember correctly now.
Indeed, it sounds nice, if some want a quick and simple solution, honestly, I still prefer workflow with having separated linking stage and such, but for many and/or for more simple project, tass may be far easier to deal with, excellent post!
-
adtbm the nexys a7 Board you linked seems to be an offer for students only - or does trenz (as an official partner of Mega65) offer it for the same price for m65 developers?
Of not, the correct one is at 255€ (incl. Vat).
And another question: I’ve read that you should use the original digilent power adaptor.But I can’t find a 5v adaptor from digilent at trenz. Am I just too stupid to find it? I’d like to order it together in one package, and not from the digilent website if possible...
Or can you recommend another power adaptor?
cheersYan
-
Hi Yan_B,
the power supply needed is a 5V/4A DC Power supply with + on the middle pin (standard 5V volt power supply).
I have mentioned to use an original from Trenz, since some people used a 12V Power supply and fried their Nexys (the plug is the same). That's why !
If you want to order the power supply from Trenz too, just give them a call and they will provide you, with an official supported power supply and add this to your order.
With best regards !
-
... but note that most of the time, just powering it from the microUSB connected via cable to your computer is enough. This is indeed how I have been using one here this evening, and on many other occassions.
LG
Paul.
-
Thanks!
just one more question: you (or someone else from the team) mentioned somewhere that there might be a “devkit” coming, with a case from plexilaser. Is there any information about that available? To be more specific: will it have a nexys a7 with a connectivity-board for the user port and iec etc. inside, or a prototype m65 board?If it’s planned to be a nexys, will we have the option to get the devkit without the nexys if we already have that?
Most people won’t want to buy it twice, I think...
And lastly, is there a rough estimate when the devkit could be available?
-
The DevKit will have the prototype m65 board and the keyboard.
Plexilaser is on it already and we are waiting for their design atm. but we expect to have an update on those very soon.
The Nexysboard + widget is really the solution for hardcore fans with soldering skills. at this time we don't have plans to get the Nexys addon boards manufactured. Our focus is the official Board ! but we support the Nexys as well since both are based on the Artix A7 100T FPGA and it was our first step towards the realisation of the MEGA65.
So from our point of view, we would appreciate and support it, if somebody would like to get a batch of widget boards manufactured
But we just don't have the time/manpower to go into that direction atm by ourselves.
The good thing with the Nexys A7 is, that it easily fits into a standard c64c case and with the widget addon (DM65pic) you can use the standard c64 keyboard and off you go !
One last thing, the widget board (DM65pic) has atm only the keyboard and joystick ports working. the Expansion port is from Hardware design point of view allready on the board, but not implemented in the code (this is something where we would appreciate help).
Also the IEC Bus and the Userport are at the moment not implemented at all (neither Hard nor Software wise). But it is possible to add those. Here also, we would appreciate support, if somebody is interessted to develop into that direction, we would support him.
But like we said, we just don't have the time to develop on the Nexys and the MEGA65 board, but the bitstreams support both !
To summarize it: The Nexys is the cheapest solution to get a real MEGA65 at the moment, but it needs the most community work, if you want to bring it to the same level as the MEGA65 board (IEC bus, Expansion port, internal floppy drive).
But to develop software for the MEGA65 it is totally sufficent !
-
How realistic is it that the devkit will be available before 2020?
Just asking because I’d prefer that over the nexys/keyrah solution, but I want to start working on something soon and I don’t want to wait half a year
-
A fine question to which we don't, yet, have an answer. I would like to think that if not before January, that quite soon in the new year. It comes down to getting all three parts produced. We still need to get firm pricing from our separate suppliers for doing a small-run for the devkits, and they will need some lead-time.
The devkit will almost certainly be more expensive than the Nexys/A7 + widget board etc, for several reasons. First, the mechanical keyboard and case add some costs. Second, the mainboard for the MEGA65 is also non-trivial, and in small runs is quite likely to cost more than a bare Nexys/A7 board.Anyway, we will let folks know as we know more.
What might be helpful some point soon, is to get an idea of how many people would like to order a devkit.
Paul.
-
I never expected the devkit to be cheaper than the nexys - I just wondered if I´d regret it in a week when I buy the nexys now and you sell the devkit next week
But if the price for the devkit is somewhat reasonable (less than 1000€, if possible?), you can count me in for one.
-
Yes, we are expecting the devkit to be under 1000€, but we won't know exactly until we get alll the pricing done.
Paul.
-
I might be interested in one, depending on the price and features. I have some questions:
1. Does the devkit have a full C65 keyboard (Scroll Lock, F9-F14, Alt, Tab, etc.), or only C64 keys?
2. Is the ACIA already functioning (or at least - expected to function after the FPGA gets updated)?
3. Does it contain a physical floppy drive? (to be honest, I would prefer smaller case without the physical floppy, or Amiga-style floppy location, I'm a little bit short of space)
4. What switches are you planning to use? Cherry MX? Kailh? Gateron? Is it possible to choose colour of the switches?
5. Is it reasonably easy to exchange the Kernal/BASIC ROM? -
Hello,
1. Yes, the plan is that the ydevkit will include exactly the same keyboard and motherboard as the pre-series machines. It is only the case and brand of floppy drive that will be different.
2. The ACIA implementation will thus also be the same as in the pre-series. This probably still includes bugs. Note that there is no user-port on either version yet, as this will require an optional expansion board that has yet to be designed, or a special cartridge. Did you want to do interesting serial communications things?
3. Yes, we plan to supply a floppy, but it will like be J.Random 3.5" floppy drive. But it will be more Amiga style placement sideways at rear right.
4. The key switches are all Cherry. I forget which colours we used. Clicky ones for the lock keys, and less clicky for the rest. It would be a lot of hassle and cost to allow users to select which colour of keys they want.
5. Of course! Just change the MEGA65.ROM file on the SD card as often as you like. We will also soon add support to switch ROMs from in the Freeze Menu.
Paul.
-
If you want to order the power supply from Trenz too, just give them a call and they will provide you, with an official supported power supply and add this to your order.
Great, I just asked them if they can provide me with a supported 5V/4A power supply since they don´t have the original digilent one, and they send me a link to a universal 5V/3A (!) PS and ask me if that suffices for the nexys board