Jump to content
IGNORED

The Legend of Beryl Reichardt


Opry99er

Recommended Posts

Sometimes-- the idea of creating big strings out of the rows--- love that. That should make this whole thing go much more quickly--- your map scroll program is pretty quick!!! XB sucks for scrolling, but the techniques/philosophy translate very nicely. I think Adamantyr had a similar idea, and pulling it directly from disk saves a ton of grief. I had planned to do that, but I didn't make the connection that it would keep my RAM consumption down to Jack squat. Thanks buddy! This is good stuff!!

Link to comment
Share on other sites

I'll have something cool to show tonight (if my wife allows me some TI time). A hybrid of all the great ideas I've seen on here. I love this forum. icon_shades.gif

 

Adam--- I'm getting DATA errors in the second problem--- LINE 160. Here are the DATA statements I'm using:

 

 

 

9190 DATA 32,32,32,32,96,96,96,96,96,96,96,96,96,96,96,96

9195 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9200 DATA 32,32,32,32,96,96,96,32,32,32,32,32,96,96,96,96

9205 DATA 96,96,96,96,96,32,32,32,32,32,32,32,32,32,32,113

9210 DATA 32,32,32,32,32,32,32,32,32,32,32,32,96,96,96,96

9215 DATA 96,96,96,96,96,32,96,96,96,96,96,96,96,96,96,96

9220 DATA 32,32,32,32,96,96,96,32,32,120,32,32,32,32,32,32

9225 DATA 32,32,96,96,96,32,96,32,32,32,32,32,32,96,96,96

9230 DATA 96,96,96,96,96,96,96,32,32,32,32,32,32,32,32,32

9235 DATA 32,32,96,96,96,32,96,32,32,32,32,32,32,96,96,96

9240 DATA 96,96,96,96,96,96,96,32,32,32,32,32,96,96,96,96

9245 DATA 32,32,96,96,96,32,32,32,32,32,32,32,32,96,96,96

9250 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9255 DATA 32,32,96,96,96,96,96,32,32,32,32,32,32,96,96,96

9260 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9265 DATA 32,32,96,96,96,96,96,32,32,32,32,32,32,96,96,96

9270 DATA 96,96,96,32,32,32,32,32,96,96,96,96,96,96,96,96

9275 DATA 32,32,96,96,96,96,96,96,96,96,96,32,32,96,96,96

9280 DATA 96,96,96,32,32,32,32,32,96,96,96,96,96,96,96,96

9285 DATA 32,32,96,96,96,96,96,96,96,96,96,32,32,96,96,96

9290 DATA 96,96,96,32,104,32,112,32,96,96,96,96,96,96,96,96

9295 DATA 32,32,96,96,96,96,96,96,96,96,96,32,32,96,96,96

9300 DATA 32,32,32,32,32,32,32,32,96,96,96,96,32,32,32,32

9305 DATA 32,32,32,32,32,96,96,96,96,96,96,32,32,96,96,96

9310 DATA 32,32,32,32,32,32,112,32,32,32,32,32,32,32,121,32

9315 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,96,96,96

9320 DATA 96,96,96,32,32,32,32,32,32,32,32,32,32,32,32,32

9325 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,96,96,96

9330 DATA 96,96,96,32,32,32,32,32,96,96,96,96,32,32,32,32

9335 DATA 32,32,32,121,32,96,96,96,96,96,96,96,96,96,96,96

9340 DATA 96,96,96,32,32,32,32,32,96,96,96,96,32,32,32,32

9345 DATA 32,32,32,32,32,96,96,96,96,96,96,96,96,96,96,96

9350 DATA 96,96,96,96,96,96,96,96,96,96,96,96,32,96,96,96

9355 DATA 32,32,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9360 DATA 96,96,96,96,96,96,96,96,96,96,96,96,32,96,96,96

9365 DATA 32,32,96,96,96,96,96,96,32,32,32,32,32,32,32,96

9370 DATA 96,96,96,96,96,96,96,96,96,96,96,96,32,96,96,96

9375 DATA 32,32,96,96,96,96,96,96,32,32,32,32,32,128,32,96

9380 DATA 32,113,32,32,32,96,96,96,96,96,96,96,32,96,96,96

9385 DATA 32,32,96,96,96,96,96,96,32,32,32,104,32,32,32,96

9390 DATA 96,96,32,32,32,96,96,32,32,32,32,32,32,96,96,96

9395 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,96

9400 DATA 96,96,32,104,32,96,96,32,96,96,96,96,96,96,96,96

9405 DATA 96,96,96,96,96,96,96,96,32,32,32,32,32,32,32,96

9410 DATA 96,96,32,32,32,32,32,32,32,32,32,96,96,96,96,96,96

9415 DATA 96,96,96,96,96,96,96,32,32,32,32,32,32,32,96,96

9420 DATA 96,32,32,32,32,32,32,32,32,32,96,96,96,96,96,96

9425 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

Edited by Opry99er
Link to comment
Share on other sites

As you've seen, the color set declarations are indeed wrong in the XB output I generate. That's fixed now, and the Exec version of the export does an X/Y loop with VCHAR placement (and I notice other posters have suggested a similar approach). Will be posting the new version within the half-hour. Meanwhile, that dungeon screen looks great Owen!

Link to comment
Share on other sites

Changed it- now it's giving me a BAD ARGUMENT IN 160. Maybe I typed something in wrong--- I'm gonna re-enter the program... Funny thing is, it draws the first character and then kicks out the BAD ARGUMENT. I'm gonna try debugging here. It works on your end, so it should work on mine.

Link to comment
Share on other sites

Changed it- now it's giving me a BAD ARGUMENT IN 160. Maybe I typed something in wrong--- I'm gonna re-enter the program... Funny thing is, it draws the first character and then kicks out the BAD ARGUMENT. I'm gonna try debugging here. It works on your end, so it should work on mine.

 

Well, first of all, there should be NO data statements at all in that second program. One program reads those DATA statements from Magellan and creates the file. The second actually reads the file and prints it out. If you're trying to do it all in one program listing, I think you got the wrong idea. :)

 

Adamantyr

Link to comment
Share on other sites

No no--- the first was to put the DATA on disk, the second to call it up and display it. I get it--- I've written a couple up like this myself. I think my first program is bad-- TI99Dir is not displaying the contents of the data file the way I would expect....

Link to comment
Share on other sites

Okay brotha, here's my first program:

 

100 OPEN #1:"DSK1.MF1",OUTPUT,INTERNAL,FIXED 32

110 RESTORE 9190 :: FOR R=1 TO 24 :: FOR C=1 TO 32 :: C$=""

120 READ CHA :: C$=C$&CHR$(CHA) :: NEXT C

130 PRINT #1:C$ :: NEXT R :: CLOSE #1

9190 DATA 32,32,32,32,96,96,96,96,96,96,96,96,96,96,96,96

9195 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9200 DATA 32,32,32,32,96,96,96,32,32,32,32,32,96,96,96,96

9205 DATA 96,96,96,96,96,32,32,32,32,32,32,32,32,32,32,113

9210 DATA 32,32,32,32,32,32,32,32,32,32,32,32,96,96,96,96

9215 DATA 96,96,96,96,96,32,96,96,96,96,96,96,96,96,96,96

9220 DATA 32,32,32,32,96,96,96,32,32,120,32,32,32,32,32,32

9225 DATA 32,32,96,96,96,32,96,32,32,32,32,32,32,96,96,96

9230 DATA 96,96,96,96,96,96,96,32,32,32,32,32,32,32,32,32

9235 DATA 32,32,96,96,96,32,96,32,32,32,32,32,32,96,96,96

9240 DATA 96,96,96,96,96,96,96,32,32,32,32,32,96,96,96,96

9245 DATA 32,32,96,96,96,32,32,32,32,32,32,32,32,96,96,96

9250 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9255 DATA 32,32,96,96,96,96,96,32,32,32,32,32,32,96,96,96

9260 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9265 DATA 32,32,96,96,96,96,96,32,32,32,32,32,32,96,96,96

9270 DATA 96,96,96,32,32,32,32,32,96,96,96,96,96,96,96,96

9275 DATA 32,32,96,96,96,96,96,96,96,96,96,32,32,96,96,96

9280 DATA 96,96,96,32,32,32,32,32,96,96,96,96,96,96,96,96

9285 DATA 32,32,96,96,96,96,96,96,96,96,96,32,32,96,96,96

9290 DATA 96,96,96,32,104,32,112,32,96,96,96,96,96,96,96,96

9295 DATA 32,32,96,96,96,96,96,96,96,96,96,32,32,96,96,96

9300 DATA 32,32,32,32,32,32,32,32,96,96,96,96,32,32,32,32

9305 DATA 32,32,32,32,32,96,96,96,96,96,96,32,32,96,96,96

9310 DATA 32,32,32,32,32,32,112,32,32,32,32,32,32,32,121,32

9315 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,96,96,96

9320 DATA 96,96,96,32,32,32,32,32,32,32,32,32,32,32,32,32

9325 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,96,96,96

9330 DATA 96,96,96,32,32,32,32,32,96,96,96,96,32,32,32,32

9335 DATA 32,32,32,121,32,96,96,96,96,96,96,96,96,96,96,96

9340 DATA 96,96,96,32,32,32,32,32,96,96,96,96,32,32,32,32

9345 DATA 32,32,32,32,32,96,96,96,96,96,96,96,96,96,96,96

9350 DATA 96,96,96,96,96,96,96,96,96,96,96,96,32,96,96,96

9355 DATA 32,32,96,96,96,96,96,96,96,96,96,96,96,96,96,96

9360 DATA 96,96,96,96,96,96,96,96,96,96,96,96,32,96,96,96

9365 DATA 32,32,96,96,96,96,96,96,32,32,32,32,32,32,32,96

9370 DATA 96,96,96,96,96,96,96,96,96,96,96,96,32,96,96,96

9375 DATA 32,32,96,96,96,96,96,96,32,32,32,32,32,128,32,96

9380 DATA 32,113,32,32,32,96,96,96,96,96,96,96,32,96,96,96

9385 DATA 32,32,96,96,96,96,96,96,32,32,32,104,32,32,32,96

9390 DATA 96,96,32,32,32,96,96,32,32,32,32,32,32,96,96,96

9395 DATA 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,96

9400 DATA 96,96,32,104,32,96,96,32,96,96,96,96,96,96,96,96

9405 DATA 96,96,96,96,96,96,96,96,32,32,32,32,32,32,32,96

9410 DATA 96,96,32,32,32,32,32,32,32,32,32,96,96,96,96,96,96

9415 DATA 96,96,96,96,96,96,96,32,32,32,32,32,32,32,96,96

9420 DATA 96,32,32,32,32,32,32,32,32,32,96,96,96,96,96,96

9425 DATA 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96

 

 

 

 

And here's my second program:

 

100 FOR S=1 TO 14 :: READ F,B :: CALL COLOR(S,F,B) :: NEXT S

110 CALL CHAR(96,"11FF444444FF1111") :: CALL CHAR(104,"001F356AFEB686FC") :: CALL CHAR(112,"00BDFF3C191A3C7E")

120 CALL CHAR(113,"3C66A5A5BDBDA5FF") :: CALL CHAR(120,"0000E0A0BFA5E501817E247EA5244200") :: CALL CHAR(128,"0102044830304880")

130 CALL CHAR(128,"0102044830304880")

140 CALL CLEAR :: CALL SCREEN(2)

150 OPEN #1:"DSK1.MF1",INPUT,INTERNAL,FIXED 32

160 FOR R=1 TO 24 :: INPUT #1:R$ :: CALL HCHAR(R,1,ASC(SEG$(R$,1,1))) :: CALL HCHAR(R,2,ASC(SEG$(R$,2,1)))

170 DISPLAY AT(R,1):SEG$(R$,3,28) :: CALL HCHAR(R,31,ASC(SEG$(R$,31,1))) :: CALL HCHAR(R,32,ASC(SEG$(R$,32,1)))

180 NEXT R :: CLOSE #1

190 GOTO 190

1000 DATA 2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,15,1,11,1,7,1,16,1,8,1,2,1

 

I've also attached a .zip of my DSK1 file... Like I said, I'm sure it's probably a typo. I'm looking into it now. =)

DSK1.zip

Link to comment
Share on other sites

Yeah, the file isn't getting created right by the look of it... I'm investigating. I haven't done BASIC files in a long time... Assembly is SO MUCH BETTER. :)

 

SOLUTION: Move the C$="" to BEFORE the C loop starts. Always the easy ones. :) Also, remove the FIXED 32 keywords from the the OPEN statements in both programs.

(Put INTERNAL back in if you haven't done so already)

 

post-17978-127129900386_thumb.png

 

Adamantyr

Edited by adamantyr
Link to comment
Share on other sites

Hey thanks man!!! This is excellent stuff. I'll make the fixes you laid out tonight and report back. I'll be using this routine for now... The binaries the first program kicks out can be accessed via an assembly subroutine to draw this much faster, but Codex's Y,X loop in his XB Exec output isn't too bad. :)

Link to comment
Share on other sites

Very very fast!!! Thanks alot--- this is quite slick--- I like having INTERNAL format too--- release binaries and not the bulky DISPLAY files. Love it. We can hybridize this with Karstens "map" program and we shoud be on the right track!!! This is slick, thanks for the help here.

Link to comment
Share on other sites

So I guess Magellan soon will be producing those files directly ? ;)

 

I have no clue right now on how to actually build a file. You know headers, offsets and stuff.

 

Owen, since youre already using strings etc. (#260), theres no need to look further at my scroll demo (#199).

 

:cool:

Edited by sometimes99er
Link to comment
Share on other sites

With the help of Codex's "Magellan" project and Adamantyr's dsk access routine, I have hybridized the elements and now have a solid "convert-save-load-draw" routine for my game. Attached is a DSK1.zipfile with the loader mechanism (DSK1.LOADMAP) and a program which draws the screen (this will eventually be just a part of the game code, and not a standalone program) called DSK1.DRAWMAP. There are a few mods that need to be made to the current "Magellan" output and it must be divided in half, sending just the MAP DATA to LOADMAP--- paste it in. Then the character definition data and the color data must go into the second program (DSK1.DRAWMAP) to make the thing flawless. It runs very quickly. DL this zip, run DSK1.LOADMAP and wait a few seconds while it creates an INTERNAL formatted data file on DSK1. Then RUN DSK1.DRAWMAP. It will very quickly load the data from diskette and draw it on the screen. Below I've included a picture of the actual datafile which gets created by the LOADMAP screen. Below that is the actual map for which the datafile has been created =) Enjoy

 

scrnbin.jpg

 

screen2.jpg

DSK1.zip

Link to comment
Share on other sites

You’ve included a path in your zip, so when I unzipped to DSK1 it created a directory there called DSK1.

 

The funny thing is that you’ve got a frame with the map data. If the map did not contain the frame then the DRAWMAP would actually benefit from just having to draw the inner 28 characters, and hey presto, that’s just up the alley of DISPLAY AT. - I guess all this is just mockup and prototyping, and with Assembler routines to read and draw in the horizon this is probably just detouring. The road from A to B isn’t always a straight line. - Arghh, that made me sound like Eric Betterwissen up his own ...

 

:|

Link to comment
Share on other sites

How cool is this stuff!?! Magellan, dsk access, some potential assembly draw routines---- exciting times. :). Thanks to Howard and Adamantyr!!!

 

By the way Codex, if you're lurking--- give patterns.swf a try. No pen/eraser icons... One click draws a pixil and another click erases said pixil. I guess it's all a preference thing. The "reverse" or "mirror" function is pretty useful as well. Just some thoughts. :) Rock on!

Edited by Opry99er
Link to comment
Share on other sites

Looks like some nice stuff brewing!

 

One comment on the disk files - there's no difference on the disk between DISPLAY and INTERNAL, it's just a flag in the header. :)

 

Sorry Tursi, but you're wrong. When I had it set to DISPLAY mode, it would only print the first 28 characters to the file from each row string. My display program kept failing with BAD VALUE because the SEG$ was trying to access a location that wasn't possible. After I changed it to INTERNAL it started printing the entire string as intended.

 

Adamantyr

Link to comment
Share on other sites

By the way Codex, if you're lurking--- give patterns.swf a try. No pen/eraser icons... One click draws a pixil and another click erases said pixil. I guess it's all a preference thing. The "reverse" or "mirror" function is pretty useful as well. Just some thoughts. :) Rock on!

 

Good thoughts. I considered doing the classic "left click draw, right click erase", but I may be using right-clicks for tear-away menus later so I went with the icons. And since I use drag-painting, I can't toggle the pixels on the fly or it would be very confusing. :) However, adding flip and invert tools would be easy and useful. I'll add them to the list for the next release!

Edited by The Codex
Link to comment
Share on other sites

Gotcha--- well anyway, as you can see, your program is already a badass. :) I think if you were interested in adding LOADMAP and DRAWMAP to your Magellan package (inside the zip) we could split the output automatically to accomodate the format/structure of the Magellan DATA output/-- this setup could actually be a third output option. (XB DATA, XB Exec, and XB LOADMAP/DRAWMAP). Of course, it's not hard to do it manually... After I figured out the fastest way to do the conversion, I did all 4 screens in about 10 minutes. So not difficult. :) I'm playing for the next 3 nights and I have a studio session today and an all day gig tomorrow, then I'm in Nashville on Monday for a rehearsal-- then Wednesday through Subday I'm in Milledgeville GA playing, so I will be pretty much out of commission on working on this til NEXT Monday. but I'll be able to keep up on my iphone

Link to comment
Share on other sites

Thanks... And I'm surprised you could even hear anything through that shit microphone they use for the feed. And that wasn't my band even. :). I was sitting in with a different band. :) Funny how things go sometimes--- I used to play with them full time--years ago. :)

Link to comment
Share on other sites

scrnbin.jpg

 

screen2.jpg

 

Two things struck me when looking at those images. First, it is funny that the data, when viewed in an editor, looks portrait, yet on the screen in 8x8 tiles it becomes landscape. Second, with the long rows of repeating characters you have, your data would be an excellent candidate for some serious compression.

 

Matthew

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...