|
Post by Mairtrus on Jun 6, 2008 7:59:19 GMT -5
In any previous version to the current, you can find a lot of examples on how to use the BEX compiler. As a reference code, you can use the cool games from Tom Maneiro that can be found here (the page is in Spanish and source codes are fully commented in Spanish too, but they are easy to understand). Also, try with my Sudoku Master (complete, but completely uncommented), and the code of 99 Botles of Tulio (a great reference! )
|
|
|
Post by Mairtrus on Jun 6, 2008 7:18:59 GMT -5
Maybe, the problem is in the emulator that you are using.Otherwise, I can not understand Where can be the problem.
|
|
|
Post by Mairtrus on Apr 15, 2008 18:25:14 GMT -5
Sounds good, but I think you need put more complex music in your demos, because (I think) all them sound very similar (the same instruments, maybe? ). However, I can not stop thinking that the drum set isn't adequate. That includes a quality excesive, and I believe I ever heard a MD game with a drum set so powerful. Anyway, it's an incredible achievement.
|
|
|
Post by Mairtrus on Apr 3, 2008 18:13:58 GMT -5
Wow! It heard amazing! Good work, TmEE! Sometime will be available a version of your sound driver for all the Genny developers? Or will only be used in the development of Pier Solar? Anyway, this should have gone in the development forum.
By the way, welcome to the forums.
|
|
|
Post by Mairtrus on Mar 23, 2008 10:07:38 GMT -5
Well, talk about compression in the Genny is somewhat complicated, because the M68K not have an extraordinary power to run the algorithm Huffman, for example, as this will greatly widen loading times. There are 2 compression algorithms to which I consider very useful in data compression for Genesis: Nemesis algorithm (named in honor of the hacker who hacked it; apparently this is an algorithm developed by SEGA and distributed alongside his DevKit, since it is present in an infinite number of games), and the algorithm Kosinski (higher than RLE but, obviously, a little slower. This is used in the compression of the maps of sonic 1,2 and 3&K, and also to compressing some graphics that require be loaded in a very short time). In my attempt to carry both algorithms to BEX recent months ago, I failed because I didn't find the proper way to handle large chain data within the memory of 68K, however, I can try to port the RLE decompression algorithm into Basic, and also write a small program in VB to compress data (I could also try the same whit the LZ77, but I not know how it works. If only someone had a doc about it, as much as possible in Spanish ...). I suppose that could be implemented through a SUB, which takes as parameters the location of the compressed information, destination (VDP, RAM CRAM, etc.), and some other parameter that, right now, I forgot. Well, and the others, who think about this topic?
|
|
|
Post by Mairtrus on Mar 28, 2008 8:07:14 GMT -5
Yeah! This version rullz! ;D ;D ;D ;D ;D ;D Now that we have a ABSOLUTELY STABLE VERSION, finally I will finish a lot of SUBS and FUNCTIONS, which I will post in due course, and believe me, it will make happy a lot of people ... (Shit, the vanity again ). Also, off topic(well, not really): Is possible acces to the CRAM to known what colors are already loaded? Is possible add a function in the next release to do this?
|
|
|
Post by Mairtrus on Mar 26, 2008 18:02:02 GMT -5
Speaking of bugs, here's one who I discovered some time ago but always forgot to report ... ;D The error apparently is present in the instruction READLONG, when used in conjunction with a FOR...NEXT loop. Here is part of the code of discord: reload somedata for i=0 to 4 readlong a& print a& next i somedata: DATALONG 132226 DATALONG 1552152 DATALONG 11101890 DATALONG 11890 DATALONG 98880701 This prints: 0 1 1 1 1 However, the following code: reload somedata readlong a& print a& readlong a& print a& readlong a& print a& readlong a& print a& readlong a& print a& [...]
It works well! EDIT:I forgot to say something ... The bug is only present from version 1.00. In previous versions (0.21, 0.26), this does not exist. EDIT2:Shit, I forget to say something else ... Nor returns the correct value if using a WHILE...WEND loop or a GOTO. Example: cuenta: readlong c& print c& if a=4 then end else a+=1 goto cuenta end if
|
|
|
Post by Mairtrus on Feb 27, 2008 6:42:06 GMT -5
I need to see some sample code because I don't know how to duplicate this error. Might have been mentioned a long long time ago, so I really don't remember. The error that is still present in BEX, is using data statements as if they were variables. When assigning the position to variable, the compiler returns an error. I think the clearest example is found in the sample file "\fake_variables.bex."
|
|
|
Post by Mairtrus on Feb 26, 2008 18:04:16 GMT -5
Apparently, the variable assigned to the function "Input" is being treated as a variable different from that then is evaluated in the "If" or any other mathematical operation. However, it may be because the variable assigned to "Input" this being treated as "String", as this would cause than the compiler create 2 different variables but with the same name, although the memory map displays only one. ( example: _STRING_num and _INTEGER_num). Both observations was did with K-Mod, so that anyone can confirm my theories. I guess the final answer will take Devster, so we are only waiting for your answer.
P.D.:Excuse my horrendous English, but I am tired and the translator of Google is bad enough.
|
|
|
Post by Mairtrus on Feb 21, 2008 10:03:03 GMT -5
Yes! Great! Devster Thanks! I think that this release compiles a little faster, right? Anyway, a great release.
2Tulio: Theoretically, yes. ASMX is a compiler with support for the Snasm68K's syntax , so SHOULD compile the same code.
|
|
|
Post by Mairtrus on Feb 12, 2008 7:08:28 GMT -5
Incredible !! Thanks Devster. The new version works better than ever !! I suppose that it is time to retire our old and dear Snasm, and replace it with something younger and more efficient. I will wait anxiously the next new version.
|
|
|
Post by Mairtrus on Feb 5, 2008 10:59:50 GMT -5
I found an error in the declaration of multi-dimensional arrays quite some time ago: When you declare an array over 8 dimensions, when you click the button Memory Map, BEX dies. i.e.: Dim MyArray(1,1,1,1,1,1,1,1,1) as Integer Maybe no one needs a very large array, but ... Another thing I found (although I don't know if it is an error) is in the use of "argunerics" :no longer returns a value of 1 or 0(like BEX v0.21). Instead, returns crazy values. For example, when used to determine which buttons of the Joypad are being pressured, it returns a value of 255, and, in other projects, I obtained values of 45786 or similar(not in the joypad) .
|
|
|
Post by Mairtrus on Jan 25, 2008 9:52:39 GMT -5
You are in the right thing: BasiEgaXorz begining to write in the position <1,1>. Devster did this intentionally, because some TVs (especially the older ones) may not show the contour lines. But with the options TEXTHEIGHT, TEXTWIDTH and TEXTSTART can change this. For example, if you write this:
option TEXTSTART, 0,0 option TEXTHEIGHT, 28 option TEXTWIDTH, 40 you can write in ALL the screen. I hope that you have served.
|
|
|
Post by Mairtrus on Jan 25, 2008 9:32:56 GMT -5
bex could also use some better documentation . If anyone feels like thay're up for the challenge, please feel free to make some documentation. Like introducing newbies to tiles+sprites, or the new function/sub stuff. I can do part of that. Lately I have been working on **super secret project** and I have developed many skills to manage tiles/sprites, as well as some subs to rotate tiles at real-time and manage compressed graphics. I need some time (maybe 5 days) to write and upload them to the forum, because I have a lot to study (fu**ing university ...)
|
|
|
Post by Mairtrus on Jan 18, 2008 10:14:06 GMT -5
Wow, you are right. I never had noticed, but BEX v1.00 has some problems when they include 2 or more functions/subs in the same code. Perhaps Devster can give us a specific answer.
|
|