+nanochess Posted May 7, 2015 Author Share Posted May 7, 2015 Oh not at all, thank YOU! Ok, now I'm confused, I've recompiled IntyBASIC and the generated binary is exactly the same as the one in the distribution. Besides I've tested it in my Linux box and the code compiles right. Quote Link to comment Share on other sites More sharing options...
freewheel Posted May 7, 2015 Share Posted May 7, 2015 (edited) Ok, now I'm confused, I've recompiled IntyBASIC and the generated binary is exactly the same as the one in the distribution. Besides I've tested it in my Linux box and the code compiles right. Last edit. Things are fine now. I have NO idea what the hell was going on. I *think* I somehow ended up with a strange mix of intybasic_linux, prologue, and epilogue files. And my second attempt was an even STRANGER mix. I have absolutely no idea how this happened, especially not a second time. Running diffs all over the place gave me results that are impossible, but whatever. At least I figured it out. I completely wiped out my development library and started over, and my code is now compiling nicely. So thanks for sanity checking on me, and I really apologize for wasting your time. I can't figure out how it happened, but more importantly - the pro/epilogue shouldn't affect things like IF statements?? If I had mixed versions, at least the main intybasic_linux executable should have worked. Unfortunately now I have to figure out how to reclaim some 16-bit variables. I had no idea I was using so many Edited May 7, 2015 by freeweed 1 Quote Link to comment Share on other sites More sharing options...
+nanochess Posted May 7, 2015 Author Share Posted May 7, 2015 Last edit. Things are fine now. I have NO idea what the hell was going on. I *think* I somehow ended up with a strange mix of intybasic_linux, prologue, and epilogue files. And my second attempt was an even STRANGER mix. I have absolutely no idea how this happened, especially not a second time. Running diffs all over the place gave me results that are impossible, but whatever. At least I figured it out. I completely wiped out my development library and started over, and my code is now compiling nicely. So thanks for sanity checking on me, and I really apologize for wasting your time. I can't figure out how it happened, but more importantly - the pro/epilogue shouldn't affect things like IF statements?? If I had mixed versions, at least the main intybasic_linux executable should have worked. Unfortunately now I have to figure out how to reclaim some 16-bit variables. I had no idea I was using so many Cool! I'm glad everything now is working fine No way for the prologue or epilogue files to change the compiler behavior. Quote Link to comment Share on other sites More sharing options...
freewheel Posted May 8, 2015 Share Posted May 8, 2015 No way for the prologue or epilogue files to change the compiler behavior. Yeah, the only weirdness is when I got a "MULT not defined" message from using an older version of the epilogue. THAT one made sense at least (although I still have no idea how I ended up with the first situation). 1 Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 I just downloaded this. Nothing I make with it is working in jzintv. Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 4, 2015 Author Share Posted June 4, 2015 I just downloaded this. Nothing I make with it is working in jzintv. In case of doubt it should work out of the box with any of the samples provided. Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 Well, I tried a few samples. Nothing worked.I'm using Windows 7, if that helps. Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 4, 2015 Author Share Posted June 4, 2015 Well, I tried a few samples. Nothing worked.I'm using Windows 7, if that helps. Any error messages coming out? Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 No. This is what I got when I compiled game1.bas: I go to play it in jzintv and all I get is a black screen, just like everything else. Quote Link to comment Share on other sites More sharing options...
+Tarzilla Posted June 4, 2015 Share Posted June 4, 2015 What is the date stamp on jzintv.exe? Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 Date created? 8/28/2012 1:45AM. Quote Link to comment Share on other sites More sharing options...
+Tarzilla Posted June 4, 2015 Share Posted June 4, 2015 There was a version released in 2015 I see 01/20/2015 09:07 PM 734,720 jzintv.exe Quote Link to comment Share on other sites More sharing options...
+Tarzilla Posted June 4, 2015 Share Posted June 4, 2015 (edited) http://spatula-city.org/~im14u2c/intv/ Current stable version on the lower right hand side jzintv-20150213-win32.zip Edited June 4, 2015 by Tarzilla Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 I downloaded it and nothing still works. Quote Link to comment Share on other sites More sharing options...
+Tarzilla Posted June 4, 2015 Share Posted June 4, 2015 if you type the following at the command prompt jzintv -z1 game1.bin what happens? From the screen grabs aboove I see that Intybasic is executed, the AS1600 compiler is executed, but I don't see a jzintv command Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted June 4, 2015 Share Posted June 4, 2015 if you type the following at the command prompt jzintv -z1 game1.bin what happens? From the screen grabs aboove I see that Intybasic is executed, the AS1600 compiler is executed, but I don't see a jzintv command I agree. What is that "pause" you are executing? Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted June 4, 2015 Share Posted June 4, 2015 (edited) I just updated my IntyBASIC distro, and while doing a "diff" on the epilogue.asm changes, I noticed that IntyBASIC no longer speaks Spanglish. It's now back to boring English. I also see that you included my MULT macro for constant multiplication. The header of the macro says: ;* ======================================================================== *; ;* These routines are placed into the public domain by their author. All *; ;* copyright rights are hereby relinquished on the routines and data in *; ;* this file. -- James Pujals (DZ-Jay), 2014 *; ;* ======================================================================== *; That was intended to convey that the code is in the public domain, not that I take credit for it. You may want to add a note that it was modified or improved from a macro originally created by Joe Z. Joe created a "macro generator" program that produced the optimal combinations of shifts and additions for each constant. My changes were minor: Re-formatted to fit my obsessive code style; Updated all code paths to use the same registers for output and temporary storage to ensure a consistent interface; Updated all code paths to return output on initial register always; And updated code paths for x126 and x127 to use SWAPs instead of shift-by-eight. -dZ. P.S. I see that the price of donations went up from $5 USD to $9!! Edited June 4, 2015 by DZ-Jay 1 Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted June 4, 2015 Share Posted June 4, 2015 I've updated my "intybasic - DZ's Special" distribution with the latest version of IntyBASIC (v1.0.4). It includes all the new sample and contributor's programs, and all the stuff that comes with the regular distribution, but organized in my special obsessive way. I also compiled all samples programs with the latest version and tested them to make sure they work properly. As always, this is not an "official" distribution, and I don't take credit for any of its content (except the "intbas.pl" script that compiles and assembles in one go, and creates folders as necessary); but given that nanochess mentioned it in the IntyBASIC manual, it can't be all bad. If nanochess approves, and there is interest in it, I'll create a post in the forum to maintain this project and update it as necessary. That way there can be a single place for distribution. Please enjoy! -dZ. intybasic - DZ's Special.zip 1 Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 4, 2015 Author Share Posted June 4, 2015 If nanochess approves, and there is interest in it, I'll create a post in the forum to maintain this project and update it as necessary. That way there can be a single place for distribution. Please enjoy! Approved! Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 if you type the following at the command prompt jzintv -z1 game1.bin what happens? A black screen appears. Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 4, 2015 Author Share Posted June 4, 2015 A black screen appears. In the meanwhile you can compile game1.bas, zip the resulting files and upload there so I can check them. I'll try to give a look tomorrow. Anyone else has tested in Windows 7? I only have WinXP for testing. Quote Link to comment Share on other sites More sharing options...
+atari2600land Posted June 4, 2015 Share Posted June 4, 2015 Here are the files I got: unsuccessfulgame1.zip Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted June 4, 2015 Share Posted June 4, 2015 Just took a quick peek at the latest epilogue code and its advanced quite a bit since I last looked . However I did notice this code sequence :- _play_music: PROC TSTR R0 BEQ @@1 MOVR R0,R2 MVI@ R2,R3 INCR R2 DIS MVO R2,_music_start MVO R2,_music_p MVII #1,R0 MVO R3,_music_t MVO R0,_music_tc EIS JR R5 @@1: DIS MVO R0,_music_start MVO R0,_music_p MVII #1,R0 MVO R0,_music_t MVO R0,_music_tc EIS JR R5 ENDP Which seems to be creating critical sections out of non interruptible sequences of MVO instructions. It could be better optimised as follows :- _play_music: PROC MOVR R0,R4 ; TSTR R0 is the same as MOVR R0, R0 so its redundant. BEQ @@1 MVI@ R4,R3 MVII #1,R0 MVO R4,_music_start ; V - No interrupts in this sequence. MVO R4,_music_p ; | MVO R3,_music_t ; | MVO R0,_music_tc ; V JR R5 @@1: INCR R4 MVO R0,_music_start ; V - No interrupts in this sequence. MVO R0,_music_p ; | MVO R4,_music_t ; | MVO R4,_music_tc ; V JR R5 ENDP 1 Quote Link to comment Share on other sites More sharing options...
+nanochess Posted June 4, 2015 Author Share Posted June 4, 2015 Here are the files I got: Just I've ran the files with jzintv and everything worked just fine. Please check you've downloaded the most recent version of jzintv and that there are no other versions in your path. A way to checking this is to run jzintv without arguments to see current version. Anyway I've found a bug in IntyBASIC, it includes the ECS boot code even when it's not needed, but no harm. Just took a quick peek at the latest epilogue code and its advanced quite a bit since I last looked . However I did notice this code sequence :- _play_music: PROC TSTR R0 BEQ @@1 MOVR R0,R2 MVI@ R2,R3 INCR R2 DIS MVO R2,_music_start MVO R2,_music_p MVII #1,R0 MVO R3,_music_t MVO R0,_music_tc EIS JR R5 @@1: DIS MVO R0,_music_start MVO R0,_music_p MVII #1,R0 MVO R0,_music_t MVO R0,_music_tc EIS JR R5 ENDP Which seems to be creating critical sections out of non interruptible sequences of MVO instructions. It could be better optimised as follows :- _play_music: PROC MOVR R0,R4 ; TSTR R0 is the same as MOVR R0, R0 so its redundant. BEQ @@1 MVI@ R4,R3 MVII #1,R0 MVO R4,_music_start ; V - No interrupts in this sequence. MVO R4,_music_p ; | MVO R3,_music_t ; | MVO R0,_music_tc ; V JR R5 @@1: INCR R4 MVO R0,_music_start ; V - No interrupts in this sequence. MVO R0,_music_p ; | MVO R4,_music_t ; | MVO R4,_music_tc ; V JR R5 ENDP Very nice tip! I'll put it in next version Thanks! Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted June 4, 2015 Share Posted June 4, 2015 Just I've ran the files with jzintv and everything worked just fine. Worked fine for me too. Very nice tip! I'll put it in next version Thanks! Glad to help! 1 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.