IRC log started Sat Nov 27 09:04 *** JLawless (~jimbo@dialup-4.228.198.238.Dial1.Denver1.Level3.net) has joined channel #slang *** JLawless has left channel #slang -> *lgb_* BTW, who are you? :) In any demo groups, or hang out on cbm-hackers, or...? Pub: #slang @Wyndex RobinH @LGB_ *LGB_* Heh. it's not an easy story :) we had a demo group named Digital Creatures (PC scene) however we had never make anything famous :) just few Hungarian diskmags and releasing some pics and musics etc *LGB_* But I'm *LGB_* But I'm very interested in retro computing for some years now so I'm writing emulators and other softwares mainly for 65xx and Z80 based home computers *LGB_* I'm also a subscriber of many 8 bit oriented mailing lists though mainly in 'read only mode' ;-), like cbm hackers and commodore one -> *lgb_* OK, cool :) *LGB_* Otherwise I'm doing open source projects, like I was one of the first core members of the MPlayer software (www.mplayerhq.hu). *LGB_* and likes, I hope it's enough as introduction :) -> *lgb_* Yup, thanks, good to know :) *LGB_* And what about THIS channel exactly? I've read on a mailing list to have some kind of meeting in this channel however I don't remember exactly ... So I've visited here and I forget to exit from my iRC client so I've stucked here ... Hey :) > lgb: Well, what this channel is is a discussion between my beta testers and myself about Slang. > And Slang is a language for the C64. > That is, a language and compiler for writing 6502 programs. > Really C64 programs, but it writes 6502 code. *** Mode change "+o RobinH" on channel #slang by Wyndex > hola robinness. Greetings Steve, LGB > We'll get started in another few hours; I just showed up early to get things set up. > Robin: I'll have 1.7 up a little later, I think. First I need to do more work on it! no problem re all Wyndex: nice. Is there more info (URL) or something? It sounds interesting. High level languages like C is a bit complicated (and not efficient) for 6502 - though www.cc65.org is nice - so a simplier language would be useful people don't want or don't know assembly coding > lgb: Well, if you promise not to spread the url around, you can visit http://www.ffd2.com/slang/ for more info. now StarGate is about starting in TV here at Hungary ;-) Wyndex: well thanx, and I won't spread it :) > I'll make the url public in the near future, but for the moment everything is still in beta, so I'm not spreading it around just yet. StarGate showtime ... I'll back in a hour :) > Like, there's nothing secret there :). * LGB_ is away: (Star Gate showtime) [BX-MsgLog On] > All right, I'm off to code and will be back in a few hours. Wyndex: when will this so called irc meeting be started? :) 1p EST how did you hear about this if you didn't read the announcement? biab *** Signoff: RobinH () well I don't know what PST timezone is ;-] which was in announcement ... *** RobinH (MacbthPSW@vickesh01-4283.tbaytel.net) has joined channel #slang *** Mode change "+o RobinH" on channel #slang by Wyndex > I am back. > But, I'd like to steal maybe 15 minutes to finish up the code and upload it. > LGB: Heh, sorry about that -- PST is Pacific Standard Time, basically GMT-8 or GMT-9 (I think). *** JLawless (~jimbo@dialup-4.228.210.126.Dial1.Denver1.Level3.net) has joined channel #slang > Hola Jim Hello. Am I on time for the slang discussion? Wyndex: OK, thanx I see now ;-) "Internet time" is more rational way to communicate Internet-wide meeting ;-) but it's not so known ... > Jim: Yep, waiting on Robin, and I'm finishing up the next beta. > So, feel free to go get a cup of coffee, etc. here I am :) And sure, upload away! I've just registered myself at the forum and also I've browsed it a bit. But I haven't found any downloadable code (I at least I was not carefull enough and search it only for some minutes hehe) > Lemme finish it up first :) > PS: I went ahead and bought two DTVs. I bought one. Wyndex: It's 19:06PM CET here now, BTW ;-) 19:06PM? That's really late! Wyndex: two? But this version cannot be connected for multiplayer envirnoment am I right? I'm trying to get info on DTV but no much success, eg the so called 'it can display 256 colours' information should be proved at least for me :) and if it's true how it is implemented. Even on CommodoreOne mailing list there is not enough info. EVen if Jeri is here who designs the ASIC core (and also C=1 FPGA cores of course) I bought two too. Better deal that way, and I'm sure I can put them to work. Or wreck them. and yeah, it can do 256 colours though it doesn't use it in the games :) yes I would bet since original C64 games was written for C64/ViC-II and not an 'extended design' ;-) But I'd like to know very much how can I write software for DTV which can use this 256 color feature ... Maybe it's time to create DTV fun/hacker site :) Maybe there is already such a thing only I don't know. > 1st command done: print and sprint now have an optional row,column argument. dtvhacking.info - some info there Steve: cool > print(12,20) "hola!" will print to the middle of the screen, for example. > Where the (12,20) is optional. > On to the next one... Y'all might want to stop by the Newnet conversation tonight ( about 8 hours away ). Jeri is often there. biab > Sorry guys, almost done. > Alright, forget it, I'll upload what I've got. bak > OK, to get started for the new people, if you're curious there's a slang program at http://www.ffd2.com/fridge/slang/spritedemo.s > Just in case you'd like to see what a Slang program looks like. (A perhaps slightly crappy Slang program.) > Robin: Another new thing in this beta is that you can use 'a' as a number. > Like, "if a='q'" kind of stuff. 'a' as a number? like a variable? and it's the accumulator? Is there more info on slang other than the sample? ( bnf grammar, project history, ...anything? ) there's the secret forum > a is a variable. > The secret forum is http://www.ffd2.com/slang/ > I just ask that you not spread that around until we make it public. > Robin: Let's say you're reading in a char. Not that I've implemented that yet. > getchar(a) > It used to be that you had to do things like "if a=42" > Now you can do "if a='b'" instead. No problem. oh! 'a' :) I know understand. heheheh now > Now, the question is, what would you like to talk about/attempt here? Write a program? Convert a library over, like Mr. Mouse? > Yeah, lda #'a' kind of stuff :) I think something to show the folks at WoC would be best. like a little game/demo I've just got about 1.5 hours left (this afternoon) *** MagerValp (cl3polof@panini.cling.gu.se) has joined channel #slang hey > Hola mvness forgot it was saturday already :) > Sounds good. > Transferring 1.7 neat all done? thanks for the compile & run + 39 column fix :) > Well..... not really. Maybe the "official" 1.7 will come out in a day or two :) ok MagerValp: hi! Are you posting mails about scanf implementation in cc65 library on the cc65 mailing list? Because your name seems to be familiar for me. > Yup -- see, these meetings do produce results :) yeah, that was me dunno where they're at eep btw, all this compiler stuff made me pick up my old literature from the compiler course i dropped out of in 95 :) should uint xpos=100 both make xpos and make it equal to 100? because it doesn't seem to I have to uint xpos, then xpos=100 on the next line > OK: updated beta is at http://www.ffd2.com/slang/slangb17a.zip > This is an update to b16, so it doesn't (at the moment) contain the core libs or demo programs or whatever. > Yes, uint xpos=100 should do that. xpos appears to end up at 0 when I do that. > Yeah, works for me over here. > Like, > uint xpos=100 > xpos = 1 > And when I compile and exit, xpos is init to $0064 (location $100a) I'll xfer my proggy over when I xfer 1.7, you can check it out. > OK gotta rebewt, biam *** Signoff: RobinH () > MV: New (as of this morning) updates are: > 1. Can use single chars in number expressions, so that things like if key='q' now work. > What's actually happening is that length-1 quoted strings -- like "a" or 'c' or whatever -- can serve double duty as either a string (a$ = a$+'b') or as a number (a = 'b'). > And how Slang treats it depends on context. > 2. print and sprint now allow an optional (row,column), so that print(12,20) "Hola!" will print to the middle of the screen, for example. *** RobinH (MacbthPSW@vickesh01-4283.tbaytel.net) has joined channel #slang > Sorry no input commands yet -- it's on my list, I just didn't get to it this morning. -RobinH- DCC Send SECRET4.S (216.211.3.83) *** DCC SEND (SECRET4.S 1048) request received from RobinH [216.211.3.83:2075] Interesting stuff, Stephen. I was intrigued about Slang when Jim Brain mentioned you had demoed it at a recent get-together. I'm gonna bail, now. Thanks for the forum info. I'm gonna lurk on there later today. > OK, cu Jim. *** JLawless has left channel #slang *** No file offered in SEND mode by SECRET4.S *** DCC GET connection with RobinH[216.211.3.83:2075] established *** DCC GET:SECRET4.S from RobinH completed 1.023 kb/sec > OK, transferred and PETSCII'd > So, what happens or doesn't happen? the sprite doesn't appear on screen, it should be at 100,100 > (Do I need to transfer this all the way to the 128?) > But if you add the line "xpos = 100" up at the top it works? yup > Well, let's try one thing first. > Go ahead and add the line "put 'putcore.c.s'" at the bottom of the code. > Then, way up above, add a line like print "xpos="xpos > No space is needed before the put. > Oh, MV, I misspoke last week. I said that "n" was the number command in Jammon. Bzzzzt. # is. Liks, #$41, or #"q" or whatever. ok, cool it prints xpos=0 print(x, y) will be useful btw, sprint wasn 't working for me figured i'd try including putcore maybe that'll work better > No, sprint doesn't require putcore. > But it won't print numbers, only strings. right doing that... Steve: maybe you better xfer it to the 128? > R: I am transferring over.. will heh ok ;) > BTW, are you guys familiar with the bookmark feature of the editor? saw it on the help screen... > OK, I show it initializing to 100. > But print prints it as 0 > hmmm and the sprite doesn't show up on screen, right? you have to move it to the right with joystick > OK, got it. > In general, strings are null-terminated. Which means the string "mans:" actually requires six bytes, for example. aha :) ah we have to supply the termination byte... so I'm overwriting it get overwritten? > And that null-byte is being written into xpos, of course. see why i wanted dynamic strings? :P > So just makemanstext(6) > Well, what I could do is add range checking. > For debugging. > Personally, I always put extra padding in the strings anyways. > But nope, this is a C64 programming language, which means you can go right ahead and overwrite your entire program if you want to. hehe > Mostly I do the padding because I'm too lazy to actually count the string length, anyways. :) > MV: As to bookmark, what you do is press CLR/HOME in the editor. > Then move somewhere else -- like, do a search for some routine. right > Then press C=-CLR/HOME to poof back to the bookmark. > Really handy when doing finds and such. > Oh, Robin, another thing. yup? > You can print the scores and such using a string trick instead of those for-loops. Kinda like I did in the scroll demo. > Strings allow ranges. > This means you can do screen$(0,10:14)=leveltext$(0:4) so I can right-justify, and pad the left with 0's? > or even just screen$(0,10)=leveltext$ > If score(x) already had 48 added to it, you could do a similar thing. > The nice thing about string ranges is that it uses a much simpler asm loop to do the copy, so it's more efficient. so screen$() is the same as screen()? well, refers to the same area? > Thing of it as an LDA xxxx,X STA xxxx,X INX BNE loop. > Yeah, a string is a byte array. > All the $ says is "treat this like a string instead of a number". > You can treat pretty much anything as a string. > Make sense? yup. > k > Also, you might put a !s in the manstext, to use screen codes instead of petscii > manstext$ = !s"mans:" > Also, in 1.7 the nmi vector is automatically set. k okay, so I want to make a function to draw a box or frame of chars > ok looking for sample code in the forum... > For a subroutine? found the example > sub name(int a, byte b@$d020)<-byte ret1 etc. > ok :) it doesn't have to return anything, right? can just leave the <-etc off endsub at the end? rts? > Yeah > endsub > And no return args necessary. > In fact, no entry args are necessary either. k, cool > And just a reminder that if it's too awkward to do in slang you can always bust out the asm as needed. > Or tell me what new command to implement :) for next loops should be nestable? I get a "bad address mode" on my second next and yeah, endfor does the same thing :) > for loops should be nestable > What is the loop? (And yeah, endfor and next point to the same routine) for county=y1:y2 for countx=x1:x2 screen(countx,county)=81 next next > And countx/y are bytes? yeah ah, nope - ints I should change them > That may be it. bingo > Hmmmm... seems strange. > What are x1/x2/y1/y2? > Also, if you wanted to you could put 'q' in place of the 81, fwiw. sub box(byte x1, byte y1, byte x2, byte y2) > ok hmmm, and I'm not getting boxes either :) > It should probably be screen(county, countx) also -- row, column. yeah, I reversed that I learned that earlier :) > heh ah, I was expecting 81 to be a ball, lower case'll do that just something I did as a kid basic coder, by the way never forget good 'ol poke1024,81 hmm, just got 10 mins left > heh > And yeah, you're right -- 81 is the ball. I was looking up the petscii is all. > I had forgotten to look up screen codes :) so my box isn't working... it looks to be printing the 6 Q's every 25 chars or so not every 40 to line up as a box can you try it there? > Yup, hang on. > OK< one thing -- I notice in the code you sent me that screen is defined as screen(40,25) > Should be screen(25,40) oh, hehehe, I thought I had fixed that a week ago must not have saved it after that session yeah, that's all good - this was feeling very familiar > Well, I mostly get a box, but I get a bug too. > Yeah, I see what happens. > There's a bug in the array routines. > If you try to access row 19, it will bug -- it's an overflow thing. > I'll definitely fix that for the real beta 1.7 > Yay, Robin found a bug! :) ah, yup, I just found that too :) did a frame routine as well, worked nice otherwise :) > ok okay, I gotta run... I'll idle here in case someone else does something :) > ok, Thanks! > I'll pretty much just be idling too -- check in every now and then. I should have some time tomorrow too, if you happen to fix that bug and upload it, it'd be appreciated > ok > I'll hopefully have some input routines as well. *** _dW (dw@oldgpc.globalpc.net) has joined channel #slang <_dW> llamas :P > Hola dwness <_dW> quiet in here, eh? :) > Show's over :) <_dW> hehe <_dW> good progress on slang? > Yeah. > Getting ever closer to releasing for real. <_dW> coolness <_dW> so I hear supercpu code generation may be in the near future? > Well, it will already do some of that. > Like, you can have arrays up in SuperRAM and such. > But it doesn't use 16-bit mode or anything like that. Which really isn't all that useful anyways. <_dW> ah coolness > I'd say the 65816 opcodes I use the most are stz, phx/plx, and phy/ply. Other than that, the uses are pretty specialized. <_dW> well, being able to use the address space provided by the 65816 should be pretty good for most apps > Oh yeah, and sta (zp) > Yeah, I think so. Of course, first there needs to be apps :) <_dW> I guess some of the math stuff? 16 bit math stuffs <_dW> true :) > You should check out the BBS if you haven't in a while. Lots of updates. > Someday you should give Slang a whirl too! <_dW> yeah, I've been lame lately > Here's an example program: http://www.ffd2.com/fridge/slang/spritedemo.s > Has a smooth scrolling message in the top row, and a block sprite you can move with the joystick. <_dW> still recovering a bit from the dtv > Yeah, I'll bet! *** Window LOG is OFF IRC log ended Sat Nov 27 16:28