Serguei2 Posted July 31, 2016 Share Posted July 31, 2016 I played a Pac-Man prototype using BlueMSX, an emulator and I noted the whole game uses screen 1 instead screen 2 for most of the games. Based on documentation I found, screen 1 does not support sprites, unless I missed something. Quote Link to comment Share on other sites More sharing options...
+nanochess Posted July 31, 2016 Share Posted July 31, 2016 Screen 0 is the mode that doesn't support sprites. Quote Link to comment Share on other sites More sharing options...
Kiwi Posted July 31, 2016 Share Posted July 31, 2016 From TMS9918.pdf manual, they called it Graphics I mode. Can be called screen mode 0, which I recall is a BIOS function in the Colecovision that if you call it then it will preset all the tms9918a registers to work in Graphics I mode. What screen_mode_2_text(); is the undocument version of Graphic 2 mode, which allows the color table to be 2 colors a 1x8 line instead of 64 horizontal rows of color across the char table. It's hard to explain but open up ICVGM and imagination a row of char being that color. Text mode does not allow sprites due to the 320 pixel bandwidth limit because it is drawing all the tiles and overwriting/ignoring the last 2 bit to write the next tile. And lastly, multicolor mode. Quote Link to comment Share on other sites More sharing options...
Serguei2 Posted July 31, 2016 Author Share Posted July 31, 2016 (edited) Screen 0 and 2 have sprites Screen 1 has no sprites since it's text mode only. Unless this documentation contains errors. Edited July 31, 2016 by Serguei2 Quote Link to comment Share on other sites More sharing options...
Serguei2 Posted July 31, 2016 Author Share Posted July 31, 2016 Nevermind. I just read Kiwi's answer. It was not there when I was typing. Quote Link to comment Share on other sites More sharing options...
+nanochess Posted July 31, 2016 Share Posted July 31, 2016 And I was answering using as base the MSX screen modes SCREEN 0 ' 40x24 SCREEN 1 ' 32x24 with color for each 8 letters SCREEN 2 ' 32x24 with independent color SCREEN 3 ' 64x48 multicolor Quote Link to comment Share on other sites More sharing options...
Serguei2 Posted July 31, 2016 Author Share Posted July 31, 2016 I just discovered Mousetrap uses screen 1 too. Thanks guys. Quote Link to comment Share on other sites More sharing options...
Kiwi Posted August 1, 2016 Share Posted August 1, 2016 I made a mistake, it is the MODE_1: equ $1F85 call is the one that preset the VRAM register to be graphic mode 1. I believe few games use the 4KB mode to stash data into VRAM like Destructor to decompress data(I think) to VRAM and Gateway to Aspari to hold the state of the rooms. I've use VRAM to decompress data to the unused part of the VRAM, 0x2800 and 0x3000 isn't being use in screen_mode_2_text();. I'm not sure what the term "screen mode 0" comes from. Quote Link to comment Share on other sites More sharing options...
Pixelboy Posted August 1, 2016 Share Posted August 1, 2016 I made a mistake, it is the MODE_1: equ $1F85 call is the one that preset the VRAM register to be graphic mode 1. I believe few games use the 4KB mode to stash data into VRAM like Destructor to decompress data(I think) to VRAM and Gateway to Aspari to hold the state of the rooms. I've use VRAM to decompress data to the unused part of the VRAM, 0x2800 and 0x3000 isn't being use in screen_mode_2_text();. I'm not sure what the term "screen mode 0" comes from. "screen mode 0" is text mode. No sprites, only two colors for displaying text, tiles are 6x8 instead of 8x8, so you get more tiles per line. Quote Link to comment Share on other sites More sharing options...
Kiwi Posted August 1, 2016 Share Posted August 1, 2016 (edited) I was wondering why it was called screen mode 0 referring to graphic mode I in the cv_programming.pdf. from page 20 of the pdf: "For a text adventure, the screen mode 1 with 40 columns should be a good choice. But for the other Coleco projects, the screen modes 0 and 2 are the most appropriate choices. The screen mode 3 (very big pixels on screen) is not a good choice. Do not use the undoccumented screen mode. For all my ColecoVision projects, I use the screen mode 2. This screen mode allow me to do bitmap title screen and colorfull characters set. Compute the VDP control registers values based on your own requierments." Edited August 1, 2016 by Kiwi Quote Link to comment Share on other sites More sharing options...
Tursi Posted August 1, 2016 Share Posted August 1, 2016 "screen mode x" doesn't come from the TI literature... I think it's MSX as alluded above. What would be the advantage of switching the chip to 4k mode? When you still have 16k VRAM physically attached, the data ends up scattered across them (ie: it doesn't just use the first 4k and ignore the rest, that's not how DRAM is addressed). There are two undocumented modes too, you can turn on the bitmap switch for text mode and multicolor mode to get the multiple table behaviour. But, it's not terribly useful in multicolor since you can define every pattern anyway. Arguably useful in text if you need a 240x192 monochrome bitmap mode. Quote Link to comment Share on other sites More sharing options...
Serguei2 Posted August 1, 2016 Author Share Posted August 1, 2016 "screen mode x" doesn't come from the TI literature... I think it's MSX as alluded above. What would be the advantage of switching the chip to 4k mode? When you still have 16k VRAM physically attached, the data ends up scattered across them (ie: it doesn't just use the first 4k and ignore the rest, that's not how DRAM is addressed). There are two undocumented modes too, you can turn on the bitmap switch for text mode and multicolor mode to get the multiple table behaviour. But, it's not terribly useful in multicolor since you can define every pattern anyway. Arguably useful in text if you need a 240x192 monochrome bitmap mode. So Screen 1 on BlueMSX would mean Graphic 1 on MSX, not text mode on ColecoVision. Quote Link to comment Share on other sites More sharing options...
youki Posted August 2, 2016 Share Posted August 2, 2016 Do not use the undoccumented screen mode. For all my ColecoVision projects, I use the screen mode 2. This screen mode allow me to do bitmap title screen and colorfull characters set. Compute the VDP control registers values based on your own requierments." For almost all my projects i used the undocumented mode screen mode 2 "Text". It is my favorite mode. If you don't use more than 8 sprites, you can save the space of 2 patterns table and 2 color tables in VRAM. If you use more than 8 sprites, you can still save the space of 2 colors table. And it forces you use only 256 different patterns for the entire screen , it helps to not waste the Rom space... in Addtion it is the mode here ICVGM tool is designed for. For my new project, i'm using the Screen mode 2 "standard", but configured in Bitmap mode. Quote Link to comment Share on other sites More sharing options...
Tursi Posted August 2, 2016 Share Posted August 2, 2016 The bitmap mode masking lets you go so far as to define all the way down to as few as 8 characters if you want to save even more VRAM (ie: 3 bits of character indexing), you aren't limited to only 256 characters or 768 characters. Theirry Nouspikel has a great writeup of it here (except he doesn't cover the sprite limitations): http://www.unige.ch/medecine/nouspikel/ti99/tms9918a.htm#Bitmap 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.