Fort Apocalypse Posted May 27, 2009 Share Posted May 27, 2009 This is a project I've been wanting to do for a while, and am now thinking- what the heck. I'm thinking of writing a web-based IDE that could be used to compile either bB or 6502 asm code and then use JStella to emulate the 2600 game. It might be *extremely* no-frills in the beginning, may never make it to the level of sophistication of Visual bB or other editors, and maybe I won't have time to be able to do any of it at all, but I like the idea of being able to just develop bB/asm games anywhere without having to worry about setup. The thought was to either do it in Java or perhaps JRuby using Google App Engine. I think I've seen some Java based 6502 asm compilers and maybe with JNI or more likely just exec I could call the bB compiler. Let me know what you think. Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 27, 2009 Author Share Posted May 27, 2009 (edited) Hmm. Looks like wouldn't be possible to call bB via Runtime.exec or JNI: http://code.google.com/p/googleappengine/i.../detail?id=1513 http://code.google.com/appengine/docs/java/overview.html An app also cannot use JNI or other native code. Would be nice to have a Java version of the bB compiler, but I guess I'd just aim for a web-based asm compiler in the beginning. Edited May 27, 2009 by Fort Apocalypse Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted May 27, 2009 Share Posted May 27, 2009 (edited) It would be cool for those who can't get bB or VbB to work or who don't want to download anything. We might attract more bB users. I probably wouldn't use it since I can't get a thing done without VbB. I wanted an IDE with all of the features of VbB from the start and now we finally have it. Edited May 27, 2009 by Random Terrain Quote Link to comment Share on other sites More sharing options...
roland p Posted May 27, 2009 Share Posted May 27, 2009 Maybe the whole tool could be written in Java and then deployed like a java webstart application? It will run like a normal application, but installed just with a click on a link. Quote Link to comment Share on other sites More sharing options...
mika Posted May 27, 2009 Share Posted May 27, 2009 I don't know if that is possible, and have absolutely no idea how it could eventually be done, but if the proper bB environment is not possible, then maybe something similar to playfieldpal and playerpal, but combining both - including let's say possibilty to add standard movement/animation/jumping routines to the players, that lets you view the result in the browser and export the code? And if it could support all kernels included in bB. well, would something like that be possible? Quote Link to comment Share on other sites More sharing options...
yuppicide Posted May 27, 2009 Share Posted May 27, 2009 I wouldn't be interested, but I feel you're asking the wrong target audience. A lot of us already use VbB. You need to find people interested enough, but not interested enough to figure out how to install the software. Maybe in another forum. Quote Link to comment Share on other sites More sharing options...
bongomeno Posted May 27, 2009 Share Posted May 27, 2009 I would be very interrested. Until someone makes an installer program that might be my only way to use bB (i cant set up the darn thing). Quote Link to comment Share on other sites More sharing options...
SeaGtGruff Posted May 27, 2009 Share Posted May 27, 2009 I would be very interrested. Until someone makes an installer program that might be my only way to use bB (i cant set up the darn thing). I'm thinking about trying to throw together an installer program in Visual Basic. What operating system are you using? If it isn't Windows, then I guess you'll have to wait for someone else to make a Unix/Linux or Mac installer. Michael Quote Link to comment Share on other sites More sharing options...
bongomeno Posted May 27, 2009 Share Posted May 27, 2009 my computer runs on windows xp =]. i would be VERY greatful if you were to make an installer. I want to program the atari 2600 sooooo badly. lol Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 27, 2009 Author Share Posted May 27, 2009 (edited) Maybe the whole tool could be written in Java and then deployed like a java webstart application?It will run like a normal application, but installed just with a click on a link. Yep, that would be find to install a Java app as an editor, but I'm not really sure whether it would support the separate bB files and compilers being part of that and called via JNI. This started when I reformatted my computer and never went back to setup bB again. I thought "if all of this was online somewhere then not only would I still have it setup, but people with Macs, Linux, etc. could develop also" (Edit: that was before I knew it was available already in OS X and Linux! How cool is that?!!). In addition, I want to be able to work on development while I'm away on a trip if I wanted without having to set it up or have my own laptop (because I've had work laptop HDs die before). Setting up bB for me was not just the standard stuff- I had a 2-4 score minikernel, possibly some other minikernel (I forget), and it had some patches applied. I have also wanted to also be able to use the Yar's "neutral zone" effect kernel at some point that Fred wrote, as well as the new platform stuff. I could possibly write it as an open source project (so people could add to it if they wanted) and then host it on someone's server that they'd be willing to share (if they didn't mind running a Tomcat instance fronted by apache, or similar). But I was thinking Google App Engine would be highly reliable and would stay online even after whoever else I would be borrowing space from lost interest. However, Google App Engine doesn't support JNI or native calls. Basically before I were to get much further, I would like to have a proof of concept app that allows login, has an editor, and "saves files" online. Then next step would be to try to integrate a compiler (although I might spike that early on) and then integrate (use) Jstella. After that, who knows? Edited May 27, 2009 by Fort Apocalypse Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 27, 2009 Author Share Posted May 27, 2009 (edited) I would be very interrested. Until someone makes an installer program that might be my only way to use bB (i cant set up the darn thing). I'm thinking about trying to throw together an installer program in Visual Basic. What operating system are you using? If it isn't Windows, then I guess you'll have to wait for someone else to make a Unix/Linux or Mac installer. Michael For the mac, vmware fusion is nice or parallels, then just install it in windows. Linux- maybe wine or maybe vmware? Edit: no way! I didn't know bB was available for Mac and Linux. That's awesome! That is one less reason to have a web-based editor, but still awesome. Edited May 27, 2009 by Fort Apocalypse Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 27, 2009 Author Share Posted May 27, 2009 I don't know if that is possible, and have absolutely no idea how it could eventually be done, but if the proper bB environment is not possible, then maybe something similar to playfieldpal and playerpal, but combining both - including let's say possibilty to add standard movement/animation/jumping routines to the players, that lets you view the result in the browser and export the code? And if it could support all kernels included in bB. well, would something like that be possible? That sounds neat. It would be good thing to ask for in visual bB I think. Right now I'm just trying to think about getting started. Quote Link to comment Share on other sites More sharing options...
+batari Posted May 27, 2009 Share Posted May 27, 2009 There are some C-to-Java converters out there. I'm not sure how well they work, but arguably, not a lot needs to be changed to the C code to make it compile in Java. Alternatively, one might be able to run bB as a CGI, and feed source to the compiler with HTML forms and echo output to another form, and run jStella in another window. It may be hard to find a server that will let you do that, though Quote Link to comment Share on other sites More sharing options...
mika Posted May 27, 2009 Share Posted May 27, 2009 more i think about it, easier it sounds. although someone with a skill in web design and batari basic is needed to do it. oh, plus a lot of spare time here we go: - selectable list of kernels possible - that's just exporting a simple code at the beginning. - player design - like in playerpal height of up to twentysomething, width 8 obviously - export to subroutine - animation of player - again like in playerpal, - export to subroutine, plus add a standard moving in direction whenjoystick presses to the loop - playfield - like in playfieldpal - export to subroutine - levels - just playfields, export to subroutine, and add something like "for level a goto 10 20 30..." to the loop and so on, player1, missiles, ball. obviously some kernel choices make missiles unavailable, like in basic batari kernels. done. standard procedures on collisions, export. at the end export full code, so designer can tweak in some places if necessary, and voila! making games for 30 years old system available to designers, without the programming skills. i bet we could expect some innovative games, even with that limited environment. that probably would not happen, but would be nice tool. and some of us could at least play a bit with batari basic at work, when we are not allowed to install the programming environment on the employer computers Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 27, 2009 Author Share Posted May 27, 2009 There are some C-to-Java converters out there. I'm not sure how well they work, but arguably, not a lot needs to be changed to the C code to make it compile in Java. Alternatively, one might be able to run bB as a CGI, and feed source to the compiler with HTML forms and echo output to another form, and run jStella in another window. It may be hard to find a server that will let you do that, though Do you think I should start on a Java port of bB first then? That would be pretty fun! I've used a C-to-Java converter before and totally agree that there would be a lot of remaining work, but perhaps that might be the best way to start. Let me know. Quote Link to comment Share on other sites More sharing options...
roland p Posted May 28, 2009 Share Posted May 28, 2009 Altough technically cool, and maybe a nice teaser for those who want to look at bataribasic, I don't see the point of running bataribasic on a server. If the problem is installing, maybe that should be solved first. A webinterface will only provide a worse working gui (compared to standard applications) at best. I was just wondering, could JStella also run on a Blu-Ray player? These have Java. The button-layout of the atari is simple enough for a remote control right? Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 28, 2009 Author Share Posted May 28, 2009 Altough technically cool, and maybe a nice teaser for those who want to look at bataribasic, I don't see the point of running bataribasic on a server. If the problem is installing, maybe that should be solved first. A webinterface will only provide a worse working gui (compared to standard applications) at best. I was just wondering, could JStella also run on a Blu-Ray player? These have Java. The button-layout of the atari is simple enough for a remote control right? With current technology webapps are much better. You might be surprised. Quote Link to comment Share on other sites More sharing options...
roland p Posted May 28, 2009 Share Posted May 28, 2009 Altough technically cool, and maybe a nice teaser for those who want to look at bataribasic, I don't see the point of running bataribasic on a server. If the problem is installing, maybe that should be solved first. A webinterface will only provide a worse working gui (compared to standard applications) at best. I was just wondering, could JStella also run on a Blu-Ray player? These have Java. The button-layout of the atari is simple enough for a remote control right? With current technology webapps are much better. You might be surprised. Ok, I don't mind being proven wrong I was more being the "Devil's advocate". I'm programming web-applications/site for 5 years now and I just wanted to hear some valid points for deciding to make something web-based. Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 29, 2009 Author Share Posted May 29, 2009 (edited) Altough technically cool, and maybe a nice teaser for those who want to look at bataribasic, I don't see the point of running bataribasic on a server. If the problem is installing, maybe that should be solved first. A webinterface will only provide a worse working gui (compared to standard applications) at best. I was just wondering, could JStella also run on a Blu-Ray player? These have Java. The button-layout of the atari is simple enough for a remote control right? I've only run it as an applet, but I think it works as standalone too. Look it up. With current technology webapps are much better. You might be surprised. Ok, I don't mind being proven wrong I was more being the "Devil's advocate". I'm programming web-applications/site for 5 years now and I just wanted to hear some valid points for deciding to make something web-based. I've been in IT/web dev stuff since the mid 90's, Java dev about 10 years, about 8-9 of those being at least partially (sometimes in whole) webapp dev or at the very least services powering web apps. I've seen quite a bit as I'm sure you have. Since Ajax and "web 2.0" started, even without flash things can be pretty nifty. Now with more client-side javascript UI stuff taking off recently, there is a pretty good base for web-based apps these days. Yes, client-side non-browser based stuff like iPhone apps have also taken the spotlight recently, but even Google is quite big on the browser as a app platform. That said here are the main pros and cons, IMO. Pros: * Can theoretically run in an modern browser, and browsers are available for most modern OSes. * Can save files and state server-side without additional configuration that is typically local environment specific. * Can theoretically run that webapp almost anywhere and have same application environment/state (like a hotel, kiosk, etc.) - ok maybe this and the last point are the same. Cons: * Javascript and modern browsers needed to view/use webapps may actually be slower on older computers (like the PIII ~400Mhz I'm writing this on!) than older editor apps (I'm thinking Crimson Editor + bB here- that would probably work on the computer I'm on now quickly enough). I can use Gmail on the computer I'm on now though, and it is usable. Just dog slow. * People may feel more comfortable keeping their stuff locally. I've probably done a pretty sorry job at making my case, but there you go. Edited May 29, 2009 by Fort Apocalypse Quote Link to comment Share on other sites More sharing options...
+grafixbmp Posted May 29, 2009 Share Posted May 29, 2009 This idea may not be the thing for the users that do developing now, but would be an excellent way to get new people into the scene. When anyone starts something new, the more hoops one has to go through to reach the goal, the more tired/burned out and quicker so one gets. setting up preferences and settings during the installs of native pc software seems so custom even when the task is simply so strait forward, and the more work that has to be done to port to other OSes rather than general web browsers seems like it could be a waste now-a-days.. see, to me It just seems the way to go as long as you have a computer and net access, your're good to go! Quote Link to comment Share on other sites More sharing options...
bongomeno Posted May 29, 2009 Share Posted May 29, 2009 you must have internet access and a computer. how else would you have gotten bB? lol thats why this is a great idea. Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 29, 2009 Author Share Posted May 29, 2009 you must have internet access and a computer. how else would you have gotten bB? lolthats why this is a great idea. True, but at one point the thought was that might not always be the case. At one point Curt/Legacy Engineering was considering packaging it with Atari Flashback 2 Portables, but then Atari flaked out and dropped the FB2 portable project. Now Marty and Curt are still working on getting investors for it, so it's not totally out of the question, but not quite as likely as it might have been. Thanks for the kind words though. So far Fred has done most of the work on the C to Java port of bB. I'm hoping to take a look this weekend to see what I can do. Quote Link to comment Share on other sites More sharing options...
mos6507 Posted May 30, 2009 Share Posted May 30, 2009 If you want to get serious you really need the Stella debugger. Unless someone wants to write a debugger for JStella, it just won't be a very useful testbed. Quote Link to comment Share on other sites More sharing options...
Fort Apocalypse Posted May 30, 2009 Author Share Posted May 30, 2009 If you want to get serious you really need the Stella debugger. Unless someone wants to write a debugger for JStella, it just won't be a very useful testbed. One step at a time! Quote Link to comment Share on other sites More sharing options...
+batari Posted June 5, 2009 Share Posted June 5, 2009 Finally, I got a command-line Java conversion of bB and DASM working. I've included two jar files for bB and DASM and a batch file and shell script to run them. It still uses sed if it's there, so that should be changed for a web interface (sed isn't necessary anyway.) I have no idea how to integrate command-line Java with a web page, however, so I'll leave that to Fort Apocalypse. bBJava.zip Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.