Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - Off-topic inspiring technical stuff

Reply to topic Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next
Author Message
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Sat Feb 16, 2019 4:49 pm
Someone is making a microgame maker targeting the NES:
http://forums.nesdev.com/viewtopic.php?f=22&t=18355
https://github.com/NovaSquirrel/NESMicrogameTool
EVs6WVZ.gif (391.43 KB)
EVs6WVZ.gif

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Wed Feb 27, 2019 11:30 pm
Quote

A small Java tool to convert short animation loops to be played on MSX computers. This is the code that was used to generate the flag animation in the game XRacing ( https://github.com/santiontanon/xracing ).

The input is a GIF file, and the output is a collection of .asm file with the data necessary to play the animation. The data is divded into 2 parts:

Tiles/attributes: to be copied to each of the three banks of the VDP (the converted assumes MSX1 with Screen 2).
Name tables: the name tables of each of the animation frames, to be copied to the VDP at each frame.
Additionally, just to see the animation in an MSX. The tool prepares a small .asm file to show how to play the animation, and compiles it into a ROM that can directly be open on an MSX emulator.

The way the program works is by figuring out all the different tiles needed in each of the 3 banks to play the animation. Since only 256 tiles can be loaded at once, it assumes that only the name table can change from frame to frame, and it uses an automated clustering algorithm (k-medoids) to reduce the number of tiles to 256 (or to a smaller number if specified), in order to get an approximation of the animation.


https://github.com/santiontanon/animation2msx
  View user's profile Send private message Visit poster's website
  • Joined: 08 Dec 2013
  • Posts: 200
Reply with quote
Post Posted: Fri Mar 22, 2019 11:23 pm
A music video running on an unmodified Genesis/Megadrive:

(some impressive 3D polygonal action!)
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Thu Apr 18, 2019 10:27 pm
GB studio is a visual tool for making games for the Gameboy:

Quote
Make GB games in minutes. Play in an emulator or your browser.

A free and easy to use retro adventure game creator for your favourite handheld video game system.

Create Real ROM files: Run your games on any compatible emulator, if you've got a flash cart you can play them on a real console!

Simple Setup: No complicated dependencies to install, just a single application with everything you need to get started.

No knowledge required: Simple visual scripting means you don't need to have made a game already. GB Studio also hides much of the complexity in building GB games so you can concentrate on telling a great story.

Build for the web: GB Studio comes with a web based emulator that even works great on mobile. You can quickly export your games to play in a browser or even upload to Itch.io.

- Visual game builder with no programming knowledge required.
- Design your graphics in any editor that can output PNG files e.g. Photoshop, Tiled, Aseprite.
- Example project included to get started right away.
- Make top down 2D JRPG style adventure games.
- Build real GB Rom files which can be played in an emulator or on device using USB Carts.
- Build a HTML5 playable game that also works on mobile and can deployed to any webserver or uploaded to Itch.io.
- Built for macOS, Windows and Linux.
- Supports both macOS light and dark mode.
- Includes the full tools that were used to build Untitled GB Game, free to play on Itch.io.


https://www.gbstudio.dev/
gbstudio.png (172.33 KB)
Scrrenshot
gbstudio.png

  View user's profile Send private message Visit poster's website
  • Joined: 09 Sep 2001
  • Posts: 236
  • Location: Umeå, Sweden
Reply with quote
Post Posted: Fri Apr 19, 2019 7:35 am
Super Mario Bros has been ported to the Commodore 64, based on the disassembled sources.

https://www.lemon64.com/forum/viewtopic.php?t=71262&start=0
  View user's profile Send private message Visit poster's website
  • Joined: 09 Dec 2013
  • Posts: 228
  • Location: detroit
Reply with quote
Post Posted: Fri Apr 26, 2019 1:49 pm
Magnetic Micro-Robots, which can move around, grab things, play tetris, etc.

  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
Post Posted: Mon May 13, 2019 9:01 pm
Maybe not the usual kind of thing here but this is definitely off topic, inspiring and technical...

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Jun 04, 2019 11:57 pm
Raspberry Pi embedded inside a NES cartridge running Doom on an unmodified NES.

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Wed Jun 26, 2019 9:42 am
An experimental tool to automatically convert pop music to chiptunes:

Quote
In this paper, we propose an audio mosaicing method that converts Pop songs into a specific music style called “chiptune,” or “8-bit music.” The goal is to reproduce Pop songs by using the sound of the chips on the old game consoles in 1980s/1990s. The proposed method goes through a procedure that first analyzes the pitches of an incoming Pop song in the frequency domain, and then synthesizes the song with template waveforms in the time domain to make it sound like 8-bit music. Because a Pop song is usually composed of the vocal melody and the instrumental accompaniment, in the analysis stage we use a singing voice separation algorithm to separate the vocals from the instruments, and then apply different pitch detection algorithms to transcribe the two separated sources. We validate through a subjective listening test that the proposed method creates much better 8-bit music than existing nonnegative matrix factorization based methods can do.
Moreover, we find that synthesis in the time domain is important for this task.




https://github.com/LemonATsu/pop-to-8bit
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Mon Jul 01, 2019 10:55 pm
Someone is making a Mode-7 engine for the NES.

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Jul 02, 2019 4:03 pm
Millfork: a middle-level programming language targeting 6502- and Z80-based microcomputers and home consoles

Quote

Millfork

A middle-level programming language targeting 6502-based, 8080-based and Z80-based microcomputers.



- high performance, due to being designed and optimized for 8-bit microprocessors

- multiple targets:

-- Commodore 64 (the primary target)

-- Commodore 64 with SuperCPU (experimental, incomplete and very buggy)

-- other Commodore computers: C16, Plus/4, C128, PET, VIC-20 (stock or with RAM extensions)

-- other 6502-based machines: Famicom/NES, Atari 8-bit computers, BBC Micro, Apple II+/IIe/Enhanced IIe, Atari 2600 (experimental)

-- Z80-based machines: ZX Spectrum 48k, NEC PC-88, Amstrad CPC, MSX

-- CP/M

-- Game Boy (experimental)

-- MS-DOS (very experimental, via 8080-to-8086 translation)

- multiple supported target processors:

-- well supported: MOS 6502, Ricoh 2A03/2A07, WDC 65C02, Intel 8080, Intel 8085, Zilog Z80

-- reasonably well supported: Sharp LR35902, CSG 65CE02

-- partially supported: Hudson Soft HuC6280, WDC 65816, Intel 8086

- inline assembly

- simple macros

- pay only for what you use: not a single byte of memory is used unless for code or explicitly declared variables

- a simple memory model that avoids using the stack

- multi-pass whole-program optimizer (that will even optimize your hand-written assembly if you ask it to)

- support for multi-file programs (Commodore only) and banked cartridges



https://github.com/KarolS/millfork
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Jul 23, 2019 10:14 pm
Someone made a C++ compiler targeting the Z80 by generating code for x86 and then translating that to Z80.

Quote
z80 code in c++.

all z80 compilers are C (or you can use assemblers). I want to use C++.

strategy: write some C++ that optimizes beautifully, compile to x86, convert to z80.

it's that or write a compiler backend for z80 for llvm/clang.


https://github.com/dominichamon/z80cpp
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Mon Sep 30, 2019 10:30 pm
Quote
z80rogue, a roguelike game for MSX/Colecovision/Memotech
by Oscar Toledo G. Sep/29/2019.

You can edit internally the definitions for assembly for MSX,
Colecovision, or Memotech (put 1 to your selected platform,
and zero for all others).

It should be easily portable to any computer/console with
Z80 CPU and TMS9928 video processor.

https://github.com/nanochess/z80rogue
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Nov 05, 2019 4:05 pm
Spleeter uses machine learning to separate audio input into vocals, drums, bass and others; I imagine a similar concept could be used for better wav-to-psg conversions?

https://deezer.io/releasing-spleeter-deezer-r-d-source-separation-engine-2b88985...

https://github.com/deezer/spleeter
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Nov 05, 2019 11:07 pm
apuultra is an alternative apLib packer; on average, it compresses 5 to 7% better than apack while still mantaining compatibility, that is, the packed data can still be unpacked using the same old apLib routines.

Quote

apultra is a command-line tool and a library that compresses bitstreams in the apLib format.

The tool produces files that are 5 to 7% smaller on average than appack, the apLib compressor. Unlike the similar cap compressor, apultra can compress files larger than 64K (for files smaller than 64K, cap compresses 0.2% better on average).

apultra is written in portable C. It is fully open-source under a liberal license. You can continue to use the regular apLib decompression libraries for your target environment. You can do whatever you like with it.

Example compression with vmlinux-5.3.0-1-amd64

original 27923676 (100,00%)
appack 7370129 (26,39%)
gzip 1.8 7166179 (25,66%)
apultra 1.0.0 6947024 (24,88%)


https://github.com/emmanuel-marty/apultra
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Nov 05, 2019 11:25 pm
Bitsy Game Maker is a pretty simple game making tool; its games use 8x8 1bpp tiles arranged into a 16x16 grid.

Its script format looks pretty easy to parse; I'm thinking whether I shouldn't implement a converter...

Quote

Hi!

Bitsy is a little editor for little games or worlds. The goal is to make it easy to make games where you can walk around and talk to people and be somewhere. I hope you enjoy using it!

- Adam


https://ledoux.itch.io/bitsy



  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8644
  • Location: Paris, France
Reply with quote
Post Posted: Mon Nov 11, 2019 12:26 pm
6502 emulator with full map of the chipset, running on the web
https://floooh.github.io/visual6502remix/
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
Post Posted: Mon Nov 11, 2019 5:11 pm
In webassembly with Dear Imgui inside of course...
  View user's profile Send private message Visit poster's website
  • Joined: 12 Nov 2019
  • Posts: 1
Reply with quote
Post Posted: Tue Nov 12, 2019 4:04 am
argh!!! deleted the wrong comment by mistake..
  View user's profile Send private message
  • Joined: 12 Apr 2018
  • Posts: 29
  • Location: Chania, Crete
Reply with quote
Post Posted: Sun Nov 24, 2019 7:41 pm
Might be interesting this for someone: A developer explains how he did a golf game for the NES.
  View user's profile Send private message
  • Joined: 08 Sep 2018
  • Posts: 270
Reply with quote
Post Posted: Mon Nov 25, 2019 11:14 am
Estelios wrote
Might be interesting this for someone: A developer explains how he did a golf game for the NES.


Hey he follows me on Twitter. Very nice person to talk to, super helpful with any 8 bit retro dev stuff.
  View user's profile Send private message
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Wed Nov 27, 2019 11:09 pm
Evoland has been ported for gameboy; the author even made a series of articles explaining the implementation process.

* Homepage
* Github

Article:
* Intro
* Part 1
* Part 2
* Bonus
sword-demo.gif (125.49 KB)
sword-demo.gif

  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
The ZedRipper
Post Posted: Tue Dec 10, 2019 10:32 pm
http://www.chrisfenton.com/the-zedripper-part-1/

Quote
Meet the ZedRipper – a 16-core, 83 MHz Z80 powerhouse as portable as it is impractical.
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Fri Dec 27, 2019 9:15 am
8bitworkshop now has SMS support!

http://8bitworkshop.com/blog/release/8bitworkshop-ide-release-3-5-0.md.html
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Dec 31, 2019 9:55 pm
Bitsy converter allows one to convert Bitsy scripts into various output formats; for now, it has full JSON support, and partial Arduboy support; more formats will come later.

All you have to do is paste the script on the left panel, and the converted result will be displayed on the right panel. On the top of the right panel, there are also tabs for choosing the desired output format.

Link on itch.io: https://haroldo-ok-2.github.io/bitsy-converter/
Source on Github: https://github.com/haroldo-ok/bitsy-converter

I intend to start making it generate SDCC C source after I finish making it work on Arduboy.
  View user's profile Send private message Visit poster's website
  • Joined: 06 Apr 2011
  • Posts: 250
  • Location: Netherlands
Reply with quote
Post Posted: Sun Jan 12, 2020 9:24 pm
PCM player for the YM2413 OPLL:

https://www.msx.org/news/en/fm-pcm-player-10

Video:

  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
Post Posted: Sun Jan 12, 2020 9:32 pm
Quote
It works by forcing the phase generator to hold on a specified phase using test register bit 2. This allows it to index into the sine table and produce accurate near 8-bit sample playback with a simple inverse lookup table.

Quite cunning.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
SpectNetIDE
Post Posted: Thu May 07, 2020 4:10 pm
https://github.com/Dotneteer/spectnetide

Spectrum emulator inside Visual Studio, with debugging, assembly and emulation inside the IDE.
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Sun May 31, 2020 7:00 pm


A raycaster engine for the TI-99 (same VDP as the SG-1000/Colecovision/MSX, but different CPU).
  View user's profile Send private message Visit poster's website
  • Joined: 29 Mar 2012
  • Posts: 879
  • Location: Spain
Reply with quote
Post Posted: Mon Jun 01, 2020 8:51 am
It reminds me what I was trying to do for this year competition, still buggy as hell, but....
raytracer.zip (8.68 KB)

  View user's profile Send private message
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Wed Jun 03, 2020 8:49 pm
kusfo wrote
It reminds me what I was trying to do for this year competition, still buggy as hell, but....


That's a pretty good start! Using different colors for y-aligned walls versus x-aligned walls should improve the visibility without too much additional effort; also, if you don't intend to use textures, it would be possible to use dithering to make distant walls look darker.
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Wed Jun 03, 2020 8:51 pm
"“Turbo Rascal Syntax error, “;” expected but “BEGIN” (Turbo Rascal SE, TRSE) is a complete suite (IDE, compiler, programming language, image sprite level resource editor) intended for developing games/demos for the 8 / 16-bit line of computers, with a focus on the MOS 6502, the Motorola 68000 (Amiga 500, Atari ST), the GBZ80 (gameboy), the Z80 and the X86, supporting the C64, C128, VIC-20, PLUS4, NES, Gameboy, PET, ZX Spectrum, TIKI 100, Atari 2600, 8086 (CGA). With the benefits of a modern IDE (error messages, code completion, syntax highlighting etc) and a bunch of fast built-in tools, it has never been easier to program for your favorite obsolete system!TRSE runs on Windows 64-bit, Linux 64-bit and OS X. Development began on Feb 24th 2018. The TRSE framework contains a number of project examples for multiple platforms, including almost 40 runable tutorials.TRSE also contains a real-time ray tracer that can export data (screens, charsets) to the C64/Amiga etc.

Please note that not all systems are implemented with 100% support yet:

C64/VIC20 : 100%
NES/Gameboy : 75%
PET/PLUS4/C128 : 50%
Amiga 500: 60%
Atari 520 ST: 40%
X86 : 40%
Atari 520 ST: 40%
TIKI 100 : 10%
ZX Spectrum : 10%
Atari 2600 : 20%"

https://lemonspawn.com/turbo-rascal-syntax-error-expected-but-begin/

  View user's profile Send private message Visit poster's website
  • Joined: 29 Mar 2012
  • Posts: 879
  • Location: Spain
Reply with quote
Post Posted: Wed Jun 03, 2020 8:59 pm
haroldoop wrote
kusfo wrote
It reminds me what I was trying to do for this year competition, still buggy as hell, but....


That's a pretty good start! Using different colors for y-aligned walls versus x-aligned walls should improve the visibility without too much additional effort; also, if you don't intend to use textures, it would be possible to use dithering to make distant walls look darker.


Thanks for the advice Haroldoop! I'm thinking on having different tiles depending on the alignment of walls and the distance, but first I've to solve some of the errors present in the current demo :-D
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
Home-made ColecoVision
Post Posted: Sat Jul 11, 2020 10:04 pm
https://www.leadedsolder.com/2020/02/16/colecovision-diy-part-1.html

https://www.leadedsolder.com/2020/07/10/colecovision-diy-part-2.html

Not actually done yet but a bit inspiring.
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Wed Jul 15, 2020 10:28 pm
How the Sonic 2 bonus stage was made:
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Sat Jul 18, 2020 3:19 pm
Nvidia's GameGAN generates a game by training a set of neural networks with a combination of footage plus joypad inputs.

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Sun Jul 19, 2020 2:45 pm
ISOEngine is an engine for making pseudo-3D games for the GameBoy using GBDK.

https://github.com/untoxa/ISOEngine

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Mon Jul 20, 2020 10:34 pm
An analysis of the source code for SNES Doom:

  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Sun Sep 27, 2020 8:34 pm
This one is pretty interesting: a Mode 7 effect for the MSX1:

* Forum post: https://www.msx.org/forum/msx-talk/development/msx-karts-1st-playable-demo?page=...
* Github page: https://github.com/MartinezTorres/msx-karts
* Online demo: https://webmsx.org/?ROM=https://github.com/MartinezTorres/msx-karts/releases/dow...
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Sep 29, 2020 12:18 am
A few experiments on using AI to interpolate pixel art frames:
  View user's profile Send private message Visit poster's website
  • Joined: 29 Mar 2012
  • Posts: 879
  • Location: Spain
Reply with quote
Post Posted: Tue Sep 29, 2020 7:17 am
haroldoop wrote
This one is pretty interesting: a Mode 7 effect for the MSX1:

* Forum post: https://www.msx.org/forum/msx-talk/development/msx-karts-1st-playable-demo?page=...
* Github page: https://github.com/MartinezTorres/msx-karts
* Online demo: https://webmsx.org/?ROM=https://github.com/MartinezTorres/msx-karts/releases/dow...


Really impressive! I don't know if it relies on one of the bitmapped formats, but otherwise should be doable on the SMS...
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 3763
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Tue Sep 29, 2020 11:15 am
kusfo wrote
Really impressive! I don't know if it relies on one of the bitmapped formats, but otherwise should be doable on the SMS...


If this is using only ⅓ of the height of the screen, so 8 tiles, it needs 256 tiles to have a proper bitmap. Also this means you have to push 8 KB to VRAM to update a frame.
  View user's profile Send private message Visit poster's website
  • Joined: 29 Mar 2012
  • Posts: 879
  • Location: Spain
Reply with quote
Post Posted: Tue Sep 29, 2020 12:02 pm
I would like to know how it's done (I'll need to check the github), because it's equally wonderful if it's done with a bitmapped mode or a tile based one...
  View user's profile Send private message
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Sep 29, 2020 4:23 pm
kusfo wrote
I would like to know how it's done (I'll need to check the github), because it's equally wonderful if it's done with a bitmapped mode or a tile based one...


At a very quick glance at the source, it seems to be using mode 2, so it seems to be tile based. It also seems to be using an enormous unrolled loop to read offsets into DE, add those to HL, read the result into A, then output that to the VDP.
  View user's profile Send private message Visit poster's website
  • Joined: 14 Apr 2013
  • Posts: 623
Reply with quote
Post Posted: Tue Sep 29, 2020 5:36 pm
kusfo wrote
I would like to know how it's done (I'll need to check the github), because it's equally wonderful if it's done with a bitmapped mode or a tile based one...

It's for MSX1 so you can load it into Emulicious and investigate it there. Being for MSX1 also means that it uses the "legacy modes".
  View user's profile Send private message Visit poster's website
  • Joined: 28 Sep 1999
  • Posts: 1197
Reply with quote
Post Posted: Tue Sep 29, 2020 5:44 pm
It seems it uses Graphics 2 because of a need to change data on a per-line basis, but the horizontal resolution is pretty coarse, it looks like 64 cells of 1x4 solid color across a scan line.

Since we have a scan line counter and interrupts, maybe a SMS approach could be using the TMS9918 multi-color mode?

If you had a static PN (768 bytes) and four PGs (8K) dynamically updated you could cycle through the PGs every four scanlines. Thus the pixel mapping would be:

PG #0 : Color data for line 0 and 4 for rows 0-23
PG #1 : Color data for line 1 and 5 for rows 0-23
PG #2 : Color data for line 2 and 6 for rows 0-23
PG #3 : Color data for line 3 and 7 for rows 0-23

I guess the problem is that the data isn't linear so you'd have to set the VRAM address a lot before writing data. That could hurt performance.

Hmm, so maybe Graphics 2 is better. :)
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Tue Sep 29, 2020 11:28 pm
Taking a look at the tool that seems responsible for generating the lookup tables used by the demo (test_track_LUT.cc), it seems that, for every horizontal and vertical "subdivision" (lower two bits of the players' coordinates) and for every possible angle, there's a list of which offsets on the map "texture" will be used for which "pixel" on screen.
  View user's profile Send private message Visit poster's website
  • Joined: 25 Feb 2006
  • Posts: 864
  • Location: Belo Horizonte, MG, Brazil
Reply with quote
Post Posted: Sun Nov 22, 2020 5:19 pm
8bit unity is an unified API and toolset for making multiplatform games for multiple 8bit computers:

https://m.youtube.com/watch?feature=youtu.be&v=ISluNi50oEE

http://8bit-unity.com/
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 8644
  • Location: Paris, France
Reply with quote
Post Posted: Wed Dec 16, 2020 1:20 pm
Last edited by Bock on Wed Dec 16, 2020 4:44 pm; edited 2 times in total
"SuperRT - an expansion chip for realtime raytracing on the SNES"

Youtube:

Technical article: https://shironekolabs.com/posts/superrt/
https://twitter.com/CarterBen/status/1338871495016136705
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14688
  • Location: London
Reply with quote
Post Posted: Wed Dec 16, 2020 1:59 pm
I’m not sure how much I can agree that modern hardware using the host system as a kind of display adaptor is really a great technical achievement. However in this case it seems it’s simple enough to be supportable by the flash cart FPGAs similar to other modern “super FX” style enhancements, and it does seem to operate as a support chip for the main program rather than a system in itself.

Meanwhile, I still want to write a Master System native raytracer, targeting many hours per frame...
  View user's profile Send private message Visit poster's website
Reply to topic Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next



Back to the top of this page

Back to SMS Power!