Jump to content
IGNORED

Displaying a page of text on 2600, possible?


DaveC1964

Recommended Posts

Here's a quick test rom. I don't have an AFP to test on. Can someone who does give this a try? I'd like to know if it displays correctly.

 

DaveC1964 would this be a viable solution for what you want to do? Keeping it a 4K rom would leave enough room for 16 pages of text. Each page is 6 rows of 32 characters. I made each character 5 pixels instead of 3 because they looked too tall and skinny with only 3 pixels.

 

post-40226-0-39509300-1502741270_thumb.png

 

 

afp-text.asm

afp-text.bin

Link to comment
Share on other sites

Here's a quick test rom. I don't have an AFP to test on. Can someone who does give this a try? I'd like to know if it displays correctly.

 

DaveC1964 would this be a viable solution for what you want to do? Keeping it a 4K rom would leave enough room for 16 pages of text. Each page is 6 rows of 32 characters. I made each character 5 pixels instead of 3 because they looked too tall and skinny with only 3 pixels.

 

attachicon.gifABCDEF.png

 

 

Well yes kind of. I think making users rotate the unit to read then rotate back is a bit awkward. Those running on a TV would need to cock their head 90 deg.

 

The idea was to make this work for all users, even the home console 2600 versions. Limiting just to portables would be a very small section of users.

 

Is there a way it could be done in a normal orientation?

Edited by DaveC1964
Link to comment
Share on other sites

Well kind of. I think making users rotate the unit to read then rotate back is a bit awkward. Those running on a TV would be even worse as they would need to cock their head 90 deg.

 

The idea was to make this work for all users, even the home console 2600 versions. Limiting just to portables would be a very small section of users. Is there a way it could be done in a normal orientation?

If I'm understanding this correctly. The AFP emulation is not accurate enough to run the existing 32 char kernel that has proper orientation. So I was proposing a workaround that uses a simpler kernel which hopefully works on the AFP. It should be possible to detect if the code is running on the AFP or not. Then the sideways kernel could be used for AFP and the other one with correct orientation could be used everywhere else. Sure, rotating the AFP would be a little odd, but it's the best I could come up with. Personally I would prefer to have a solution that requires turning the AFP over a solution that uses flickering, interlacing, or venetian blinds.

 

Has anyone tested on the AFP with the bin file I posted above? Does it render properly and is the text readable?

Link to comment
Share on other sites

If I'm understanding this correctly. The AFP emulation is not accurate enough to run the existing 32 char kernel that has proper orientation. So I was proposing a workaround that uses a simpler kernel which hopefully works on the AFP. It should be possible to detect if the code is running on the AFP or not. Then the sideways kernel could be used for AFP and the other one with correct orientation could be used everywhere else. Sure, rotating the AFP would be a little odd, but it's the best I could come up with. Personally I would prefer to have a solution that requires turning the AFP over a solution that uses flickering, interlacing, or venetian blinds.

 

Has anyone tested on the AFP with the bin file I posted above? Does it render properly and is the text readable?

I just tested on the AFP. It does work fine.

 

In normal mode are you saying that you can only get 6 characters across? What would the other options look like (flicker etc)?

 

While I can see this being ok for the AFP for now it is a bit of a kludge to have system detection etc. What happens in the future when they update the emulation on AFP 2018, 19 ...? maybe it will work, maybe it won't detect and not work right. There are so many combinations of hardware and emulators out there that trying to manage them all now and in the future may be a bit of an issue. Then all of the work doing instructions will be negated. What about Harmony carts, 2600 jr.s, modded flashback 2s, FBxx mods, etc?

 

My goal was to have a pure 100% compatible way to display the instructions no matter what you run on from past devices/emus or in the future. The only real way to do that is to make something that will run on any 2600 compatible hardware or emulator. If it will run a bog standard 2600 game, it will display this text. (BTW those displaying on CRTs may have trouble with dark blue, maybe white or something NTSC friendly ? making this compatible with any display device is another consideration).

 

Maybe this goal is impossible. I thought it might be as we are talking ancient tech here. It was worth a shot though. Thanks for doing what you did.

Edited by DaveC1964
Link to comment
Share on other sites

My goal was to have a pure 100% compatible way to display the instructions no matter what you run on from past devices/emus or in the future. The only real way to do that is to make something that will run on any 2600 compatible hardware or emulator. If it will run a bog standard 2600 game, it will display this text. (BTW those displaying on CRTs may have trouble with dark blue, maybe white or something NTSC friendly ? making this compatible with any display device is another consideration).

 

Maybe this goal is impossible. I thought it might be as we are talking ancient tech here. It was worth a shot though. Thanks for doing what you did.

The ancient tech is fine. It's the AFB that is the problem. It does not emulate things correctly, unfortunately.

  • Like 1
Link to comment
Share on other sites

  • 5 weeks later...

The idea was to make this work for all users, even the home console 2600 versions. Limiting just to portables would be a very small section of users.

 

Is there a way it could be done in a normal orientation?

 

One other idea to consider. Only use an asymmetric playfield for the text. This should work on all systems and fix the orientation issue. The drawback would be that you would only have enough room for 10x10 characters on a page. The good thing is that it would fill the whole screen and the letters would be large and hopefully easier to read.

Link to comment
Share on other sites

 

One other idea to consider. Only use an asymmetric playfield for the text. This should work on all systems and fix the orientation issue. The drawback would be that you would only have enough room for 10x10 characters on a page. The good thing is that it would fill the whole screen and the letters would be large and hopefully easier to read.

Yeah that would be ok too. Maybe two solutions would not hurt. One best case like SpiceWare's solution that works the best but is not compatible with dodgy emulators. Another solution as you say that may not be as good but works for everything. The author could then choose which way to go. That would leave out some users now if the author choose the best case one but eventually emulators should all evolve enough so that they all work.

Edited by DaveC1964
Link to comment
Share on other sites

  • 1 year later...

Yes but probably not in batari BASIC. Flashback BASIC has a print command and allows ASCII text in data statements, WARPDRIVE's opening text is rendered like that:

 

data textdata "PRGE 2016 ROCKS"

data textdata9 "practice this "

data textdata8 "game! take aim!"

data textdata7 "focus your mind"

 

There are a lot of motivational messages in WARPDRIVE, take a look at the program listing to see the data statements and the messaging subsystem; the text doesn't have to be full screen size, it could be rendered smaller or via sprites because the print command only prints binary strings so you have a lot of control over how the messages should be printed (size/orientation, etc).

 

The bitmap ASCII characters for the alphabet can also be stored in data statements or directly in the sprite library; I actually ran out of space for sprite definitions in the sprite library (only 32) so a couple of character bitmaps are in data statements as well with a binary type.

 

attachicon.gifAFP WARP DRIVE.txt

 

 

 

so what would be the easiest way to print characters to the screen in flashback basic? it all seems a bit complicated to me. i want to print characters to the screen as small as possible, with/without scrolling. the manual is no help at all. do u have a simple example program?

Edited by xxx
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...