Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > CSDb Entries > Event id #2391 : The 2015 REU Compo
2015-07-25 13:54
taper

Registered: Dec 2001
Posts: 119
Event id #2391 : The 2015 REU Compo

Welcome to the 2015 REU Compo --- Hosted by LFT, Ruk and Taper!

See the event-page on: The 2015 REU Compo

Your mission is to create the most awesome one-file demo that runs on a standard C64 with a 512 kB REU and no disk drive.

Background
==========

The Commodore RAM Expansion Unit (REU) is a cartridge that provides secondary storage to the C64. It was introduced at CES in 1985. The memory in the REU cannot be accessed directly from the CPU (hence
"secondary"). Instead, the CPU must instruct the REU to transfer a given amount of data to or from the cartridge. The REU then takes over the bus, stalling the CPU, and transfers one byte per cycle.

This is basically all there is to it. Apart from the extra storage, the REU does not make the C64 faster or more powerful---although see below for some intriguing possibilities.

The largest REU available from Commodore (the 1750) was equipped with 512 kB of RAM. Nowadays, it is possible to emulate REUs with as much as 16 MB, e.g. using VICE or the 1541 Ultimate. Even though you can only use 512 kB in this competition, there should be no problems using
the RAM expansion features in the 1541U/1541U-II, Chameleon64 or any other device fully compatible with the Commodore 1750 REU.

Rules
=====

1. Your entry must be in .PRG format with a BASIC header. The file must load to address $801, and end before it reaches the I/O area at $d000. The gives a maximum file size of 51201 bytes.

2. You may assume that a REU of at least 512 kB is available.

3. Your entry must work with a larger REU (i.e. you cannot assume that the upper address bits are ignored). You may not use the extra RAM available in such configurations.

4. You cannot make any assumptions about the initial contents of REU memory.

5. Your entry must work on a real C64 with a real 512 kB REU from Commodore. Please keep in mind that there could still be bugs in the emulators.

6. Deadline is set to 2015-12-31 at 23:59 in a time zone of your choice. Your contribution needs to be mailed to reu@wuff.se to be accepted. You are free to create a CSDb entry for your contribution, else we will do it for you.

7. Immediately following the deadline, voting will take place on CSDb during a period of two weeks. Anonymous votes will be counted. We allow self-voting unless you have multiple personalities.

Suggestions
===========

For your inspiration, here are some ways in which a C64 demo might benefit from an REU:

Obviously, the extra RAM is useful. For instance, the demo might pre-compute large amounts of sprite graphics, and then quickly retrieve a subset of the data just before it's needed.

The fast transfer rate could be used to speed up scrolling operations: You can copy a large bitmap from the C64 to the REU, and then back again at a slightly different address.

Last but not least, the REU has a mode where every byte in a transfer gets written to the same destination address. This can be used to display graphics using the idle byte, for instance. The target address
could also be an I/O register, and this might enable some new VIC tricks.

Technical information
=====================

Please refer to the following documents for details about the REU programming interface:

http://www.zimmers.net/anonftp/pub/cbm/documents/chipdata/progr..

http://codebase64.org/doku.php?id=base:reu_registers

Happy hacking!

/LFT, Ruk & Taper
 
... 70 posts hidden. Click here to view all posts....
 
2015-07-31 23:32
Trash

Registered: Jan 2002
Posts: 122
Quote: When the VIC needs to steal cycles for DMA, will the currently running REU-DMA simply be halted and resumed after the VIC-DMA? Will the VIC also stall the REU an additional 3c like it does when stalling the CPU?

It will be halted and then resumed after the VIC-DMA is finished (I verified this during my shortlived idea of 40 columns of FLI)...
2015-08-01 00:00
JackAsser

Registered: Jun 2002
Posts: 2014
Quote: It will be halted and then resumed after the VIC-DMA is finished (I verified this during my shortlived idea of 40 columns of FLI)...

Yeah, trying to use the REU on a bad line is a bad idea... :)
2015-08-02 08:57
Firehawk

Registered: Aug 2011
Posts: 31
Yes the VIC will take the bus from the REU when it needs to (try streaming lots of data to $d021 when display is enabled) - this is also seen if you try to make i.e. $d020 splits and have sprites on the screen (this is a good way to understand where and when each spritecombination halts the bus - I would advice using VICE in border=debug to see this).
Another thing that is possible though (although not FLI, but close) would be to stream to $d021 during the non-badlines, which would add some color freedom.
2015-08-02 11:30
Dane

Registered: May 2002
Posts: 423
A CSDB REU category would be nice. If not, I'm sure the onefile-demo chart will look different next year.
2015-08-03 14:16
Rastah Bar
Account closed

Registered: Oct 2012
Posts: 336
Bit off-topic, but have you seen this cool REU project?

http://dragonslair64.areaaperta.com/
2015-08-03 14:36
T.M.R
Account closed

Registered: Dec 2001
Posts: 749
Quoting Dane
A CSDB REU category would be nice. If not, I'm sure the onefile-demo chart will look different next year.


Yeah, that's a very good point...
2015-08-04 10:34
Slammer

Registered: Feb 2004
Posts: 416
Really interesting compo, and good limitations.

Does anybody know how well tested the VICE emulation of the REU is? Is it cycle exact? If we are going to make VIC-timing effects this is critical. How many have an actual REU so they can test their productions?
2015-08-04 10:50
JackAsser

Registered: Jun 2002
Posts: 2014
We've done some cycle exact tests in Booze and so far Vice, x64sc latest version has delivered correct behaviour. I'm sure there are flaws, but the obvious REU-parts, like FPP variants and the like seems to work.
2015-08-04 12:07
chatGPZ

Registered: Dec 2001
Posts: 11390
recent VICE passes all known testcases .... and no other emulation does so far, so better have a real REU handy for testing on the real thing :)
2015-08-05 08:26
ChristopherJam

Registered: Aug 2004
Posts: 1409
I thought we pretty much agreed over in When is a One-File Demo not a One-File Demo? that the one-file category was for entries fitting Krill's definition:

Quoting Krill
Classic onefilers are up to 202 blocks, $0801-$cfff, and load in a single pass before running, no autostart, no tricks, no disk images.
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Krill/Plush
Akkara/Inox
theK/ATL
mutetus/Ald ^ Ons
Falborg
grass/LETHARGY
Chico/Civitas
Guests online: 131
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.6)
4 Coma Light 13  (9.6)
5 The Demo Coder  (9.6)
6 Edge of Disgrace  (9.6)
7 What Is The Matrix 2  (9.6)
8 Sprite Bukkake 2  (9.6)
9 Uncensored  (9.6)
10 Comaland 100%  (9.6)
Top onefile Demos
1 Layers  (9.7)
2 Cubic Dream  (9.6)
3 Party Elk 2  (9.6)
4 Copper Booze  (9.6)
5 Rainbow Connection  (9.5)
6 Morph  (9.5)
7 Dawnfall V1.1  (9.5)
8 Libertongo  (9.5)
9 Katzen-Video.mp4  (9.5)
10 Onscreen 5k  (9.5)
Top Groups
1 Booze Design  (9.3)
2 Oxyron  (9.3)
3 Performers  (9.3)
4 Fairlight  (9.3)
5 Triad  (9.3)
Top Coders
1 Axis  (9.8)
2 Sailor  (9.8)
3 Graham  (9.8)
4 Crossbow  (9.8)
5 Lft  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2025
Page generated in: 0.064 sec.