| |
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.... |
| |
hedning
Registered: Mar 2009 Posts: 4732 |
Ran the demo 7 times today... Got bugs the first time, but not on the 6 following runs (with hard reset between them). I would say it works just fine, and the bugs comes from the cold REU. When it warmed up, everything was fine. |
| |
HCL
Registered: Feb 2003 Posts: 728 |
..but you said that during party conditions, it had to cool down(!).. Hmm, well. Perhaps it makes sense after all :P |
| |
bugjam
Registered: Apr 2003 Posts: 2594 |
Quoting hedning...it is Walker's old modified (expanded) REU, upgraded to 1MB (I think)...
Could that not be the reason? |
| |
hedning
Registered: Mar 2009 Posts: 4732 |
Could be. IF it is expanded. I have no clue how to check that. |
| |
hedning
Registered: Mar 2009 Posts: 4732 |
It's a 1764 REU - and I opened it up. It is expanded. From 256 to 512 kb. |
| |
Count Zero
Registered: Jan 2003 Posts: 1940 |
hedning: I own a CMD clone REU with 512kb which Sorex sold to me a long time ago. The RAM chips are bugged and any first run of a test program will give wicked results. Any other runs on plain warm resets will work. Power off for some time will make the "broken" effect come back on this one. |
| |
hedning
Registered: Mar 2009 Posts: 4732 |
Quote: hedning: I own a CMD clone REU with 512kb which Sorex sold to me a long time ago. The RAM chips are bugged and any first run of a test program will give wicked results. Any other runs on plain warm resets will work. Power off for some time will make the "broken" effect come back on this one.
Seems like this is exactly the case here. Thanx. |
| |
Smasher
Registered: Feb 2003 Posts: 521 |
I had a REU, I think it was the 256kB model. I should check one of those boxes in my cellar, perhaps I'll find it.
I used it 25 yrs ago for swapping, as with that thing it was possible to copy a whole disk in one go and very quickly!
I never used it for anything else, like coding... lame me!
the compo is tempting, I should better follow those links and read some technical docs and then see if I can understand something and decide to take part...
some lame questions (feel free to answer RTFM!, have no mercy with me!):
- if I have my stuff (e.g. bitmaps) packed in the c64 memory is it possible to directly depack it in the REU memory? or should I cache the depacked thing in the c64 memory first and then move?
- how much data can I move from REU to c64 in a frame with screen on?
thanks for helping. more questions will probably follow... :) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11390 |
a) not possible (without a lot of overhead anyway), since REU memory isnt memory mapped
b) exactly 1 byte per cycle, plus ~20 or so overhead maybe for the setup (calculate yourself =P) |
| |
Firehawk
Registered: Aug 2011 Posts: 31 |
about 18600 bytes/frame |
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 - Next |