Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

MSX & MSX2 including the V9990 GPU (V9K)
User avatar
akuyou
Posts: 455
Joined: Mon Apr 22, 2019 3:19 am
Contact:

Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by akuyou » Wed Apr 24, 2019 8:45 am



http://www.chibiakumas.com/z80/platform.php#LessonP5

The 2 color TI, and the 16 color MSX may seem odd partners, but they both have something in common... their GPU's are not accessible directly from memory!

This means we have to use OUT commands to get data to the screen.
Chibi Akuma(s) Comedy-Horror 8-bit Bullet Hell shooter! // 「チビ悪魔」可笑しいゴシックSTG ! // Work in Progress: ChibiAliens

Interested in CPU's :Z80,6502,68000,6809,ARM,8086,RISC-V
Learning: 65816,ARM,8086,6809

John
Posts: 28
Joined: Tue Mar 24, 2020 1:18 am

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by John » Sat Jul 04, 2020 4:48 am

Hello Keith,

According to

https://www.msx.org/wiki/SCREEN

screen 3 is the only true bitmap mode (screen 1 and 2 simulate
bitmap modes with tiles) for the MSX 1.
Do you show anywhere how to use screen 3 MSX?
I am looking how to plot a pixel,with a chosen
colour, in screen 3 using assembly. Of course any other shape
can be built from single pixel. Screen 3 is the fastest
16 colour mode for graphical games, that require individual
pixel control, on an MSX 1-if the lower resolution suits the game
and isn't an issue, of course.

User avatar
akuyou
Posts: 455
Joined: Mon Apr 22, 2019 3:19 am
Contact:

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by akuyou » Sun Jul 05, 2020 6:49 am

No, I'm afraid I don't have any tutorials on that mode... I'll be covering a pixel plotting function of the '3x tilemap' mode soon

Am I reading that right? that the screen has a resolution of 64x48???
Chibi Akuma(s) Comedy-Horror 8-bit Bullet Hell shooter! // 「チビ悪魔」可笑しいゴシックSTG ! // Work in Progress: ChibiAliens

Interested in CPU's :Z80,6502,68000,6809,ARM,8086,RISC-V
Learning: 65816,ARM,8086,6809

John
Posts: 28
Joined: Tue Mar 24, 2020 1:18 am

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by John » Sun Jul 05, 2020 4:34 pm

Yeah, screen 3 is 64 columns by 48; and in addition in can still display some high resolution using the 32 sprites in screen 3. Because it does not use tiles it makes it easier (and uses less memory) to program some type of games in 16 colours such as 3D games (lacking on the MSX-1) or pseudo 3D games e.g. for example this pseudo 3D game in MSX screen 3 https://www.youtube.com/watch?v=yafTKagfBpM

instead of using screen 1 or screen 2. So if the game, or part of a game,suits using lower resolution then this mode maybe easier to program in or save memory.

John
Posts: 28
Joined: Tue Mar 24, 2020 1:18 am

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by John » Mon Jul 06, 2020 4:50 am

A game entry into msx-dev twenty has a 64x48 screen 3 game and it looks great

John
Posts: 28
Joined: Tue Mar 24, 2020 1:18 am

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by John » Sat Jan 02, 2021 12:17 am

I did my own pixel plot function for the MSX1 in screen 2 a few months ago, and I used it for that basis of lines, then 3d wireframe models, but I found it was too slow for such 3d graphics.
I came to the conclusion that coloured 3d wire frames graphics on MSX1 can be done at a good speed in MSX1 screen 3-from the works of others and the Colecovision games that use this mode, Colecovision has same VDP as MSX1.

Can you add to your tutorial how to plot a pixel/point functions in MSX1 screen 3 to you photon tutorial?-I think such screen 3 functions are fundamental to MSX graphics.

User avatar
akuyou
Posts: 455
Joined: Mon Apr 22, 2019 3:19 am
Contact:

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by akuyou » Wed Jan 06, 2021 11:40 am

Sorry, but I have absolutely no interest in MSX Screen 3, so unless it's the interest of a high value sponsor, I'm not covering it.
Chibi Akuma(s) Comedy-Horror 8-bit Bullet Hell shooter! // 「チビ悪魔」可笑しいゴシックSTG ! // Work in Progress: ChibiAliens

Interested in CPU's :Z80,6502,68000,6809,ARM,8086,RISC-V
Learning: 65816,ARM,8086,6809

John
Posts: 28
Joined: Tue Mar 24, 2020 1:18 am

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by John » Fri Jan 08, 2021 6:39 am

All right. Personally, to be frank, I would not sponsor you to do it-if that what your reply above may mean-because the reason but I am unable to do it, for now, is because I can't find any information,so far, on it on how to plot a screen 3.


I can't find any information,so far, on it on how to plot a screen 3 pixel in machine code (or assembly language) on the internet. If I do figure out how to plot a pixel in screen 3 I will write, how it is done, here for any other interested readers.

Also keep writing your good expositions/works of MSX assembly programming-they're fun to read

User avatar
akuyou
Posts: 455
Joined: Mon Apr 22, 2019 3:19 am
Contact:

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by akuyou » Sat Jan 09, 2021 11:34 am

Anyone can make a suggestion, but only $5+ backers can make a 'request' and be sure I'll spend time trying to solve it... I spend almost all my free time on the tutorials as it is, researching programming and documenting this topic could easily take a full day, and when it's something that doesn't interest me personally, I can't justify spending my spare time on it for nothing.

Screen Mode 3 seems to be called 'MultiColor mode (MC)' in the documentation, I've never tried it myself, but seeing as it's in the official VDP documents, I guess it should be usable if you follow the documentation of the memory layout. (I had wondered if it was 'unofficial' and prone to emulator issues).

Good luck!
Chibi Akuma(s) Comedy-Horror 8-bit Bullet Hell shooter! // 「チビ悪魔」可笑しいゴシックSTG ! // Work in Progress: ChibiAliens

Interested in CPU's :Z80,6502,68000,6809,ARM,8086,RISC-V
Learning: 65816,ARM,8086,6809

User avatar
akuyou
Posts: 455
Joined: Mon Apr 22, 2019 3:19 am
Contact:

Re: Video: Lesson P5 - Bitmap graphics on the TI-83 and MSX

Post by akuyou » Wed Jan 13, 2021 1:08 pm

Unless I'm misunderstanding things, MC mode is not a true bitmap screen mode.

It still uses patterns and tiles, it's just each of those tiles is defined by 2 bytes per block, and strangely, which two bytes of the 8 byte pattern changes depending on the horizontal screen line.

It would not be very possible to use all 16 colors onscreen at once, as you'd be limited to which 'combinations' you could use. If I were to port Photon to this mode (which I wont) I'd have to limit it to 4 colors, as you can only define 256 'permitations' (patterns) which you will use onscreen.

I'm guessing this 'inflexibility' is probably why it's not really used.

Anyway, heres a little example... two tiles defined. Tile pattern 0 changes colors every 4 lines - taking advantage of the effect described above... Tile pattern 1 has all 4 pairs defined the same - so it appears the same all over the screen.
MSX1_Bitmap_McMode.asm.zip
(1.26 KiB) Downloaded 3 times
That's you're lot, I'm not writing a tutorial on this one.

Edit:
After some thinking, I suppose it would be possible to set all the tiles of the tilemap to 0-255, (eg tiles 0-31 of lines 1-3 would all use tiles 0-31) then alter the bytes of the corresponding patterns to allow every pixel to be manually set in 16 colors onscreen with no repetition.
Chibi Akuma(s) Comedy-Horror 8-bit Bullet Hell shooter! // 「チビ悪魔」可笑しいゴシックSTG ! // Work in Progress: ChibiAliens

Interested in CPU's :Z80,6502,68000,6809,ARM,8086,RISC-V
Learning: 65816,ARM,8086,6809

Post Reply

Return to “MSX & MSX2 Assembly Programming”