Minimig Discussion Forum

Discussing the Open Source FPGA Amiga Project
It is currently Sun May 19, 2013 5:49 am

All times are UTC




Post new topic Reply to topic  [ 19 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: Minimig Core / Firmware Updates
PostPosted: Fri Jan 02, 2009 2:40 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1405
Location: .de
@Darrin
That "someone" adding 14MHz to the new core was me and I was very happy about Jakubs new release :)
In the other hand, I can not even take a look into any new development, when nothing is released. Even in Linux kernel and software dev's are "testing" and "unstable" releases that could be seen and used by the community. And Linux is also mostly a hobby to its developer. Also please remember: no code will ever be 100% finished nor free of bugs...
In this case only one person has the code. Of course Jakub IS the one in progress and again many thanks for your great deal of engagement to Minimig!

General I would be more happy being able to alter or at least see the changes. Due the open source nature of Minimig the core will (has to) be released anyway after releasing the binary (firmware). So there is no secret at all.
Just some kind of shapshot could also help to solve problems. Getting some other ideas and way of thinking could also help to find outstanding bugs.
I just dont know what was tested... I e.g. found in some demos a system slowdown, could be caused by too much copper/blitter bus cycles use by the chipset (coding). In standard 7MHz mode it was present, in 14Mhz CPU mode this slowdown was gone. So this information should be shared to be useful for the next chipset.
Name of the demo: Dexion-BeyondJustice.adf

I hope you all dont get me wrong! Its just a bit hard to help or share if only one is coding and nobody else can tell what will be done.
Even in unfinished code one can find new solution - If it is released or "visible" to the community.

But now Im also happy to see the new release :)

Kind regards
Sascha

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Last edited by boing4000 on Wed Feb 18, 2009 9:28 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: Any update on new firmware release?
PostPosted: Fri Jan 02, 2009 4:57 pm 
Offline

Joined: Mon Dec 01, 2008 4:04 pm
Posts: 261
Location: Lake Charles, USA / Rio, Brazil
boing4000 wrote:
@Darrin
That "someone" adding 14MHz to the new core was me and I was very happy about the new release :)


Doh! Where's the slaps-myself-on-head smiley!!! Sorry about that Sascha. Your core is still the one I use daily. :D

I see what you mean. Snapshot would at least let you know what is being worked on and what isn't so you could avoid duplication and allow you to pick up pointers, spot some bugs or suggest an alternative approach.


Top
 Profile  
 
 Post subject: Re: Any update on new firmware release?
PostPosted: Fri Jan 02, 2009 7:24 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1405
Location: .de
Darrin wrote:
Doh! Where's the slaps-myself-on-head smiley!!! Sorry about that Sascha. Your core is still the one I use daily. :D

I see what you mean. Snapshot would at least let you know what is being worked on and what isn't so you could avoid duplication and allow you to pick up pointers, spot some bugs or suggest an alternative approach.


Don't hit yourself to hard Darrin ;) Compared to Dennis and Jakub I did just minor changes and addons to the core and currently Im just testing some little things.
One reason is the little time to code and (you hit the point) the unknown implementation of new features.
My skills in Verilog certainly is below Jakub and Dennis but still could be useful. At least to try out some features and make tests.
I love to find out bugs and report to help fixing them. Means also unfinished code and features can be quite interresting. On Linux some new kernel releases don't work properly on some platforms, but the community itself can help finding the bug by testing it and making bug reports!

My suggestion to this matter is: Releasing more little (imperfect) changes can also be very nice instead of waiting "a long time" for a big new release. In non open source projects one don't have any other choice but to wait. In open source all steps should be public property to share even the little steps.
In fact this is nothing new, it is GPL :)


Anyway, a new idea to Jakub:
What about using (selectable) scanline-emulation in 31KHz video mode? This would make the scandouble screenmode look more native as on retro 15KHz PAL/NTSC screen!
Realization: Every 2nd (doubled) line will be displayed half as bright as the original 1st line.

I gave it a try with some good ideas from RedskullDC, but unfortunately it did never work. Since your current modifications in Amber.v I never try again ;)
The FPGA did not have enough room left for an additional scanline buffer, so Redskull & me tried to masquerade the 2nd line... I only saw a destroyed picture and passed out.

Here is the construct (in theory) by Redskull.
Code:
Hi Sascha,

Good to hear from you
[...]

To be able to know where on the screen it is, the Amber module needs the "sof" (start of frame) and "sol" (start of line) signals:
(same as the Denise modeule gets)
   .sol(sol),
   .sof(sof),

Inside Amber, track the Odd/even state of the vertical line with a 1 bit signal (verbeam):

//Amber local vertical beamcounter
always @(posedge vgaclk)
   if(sof)
      verbeam<=0;
   else if(sol)
      verbeam<=~verbeam;

At start of frame, verbeam is set to ZERO.
Will then flip state for each new vga line.

Next, have 2 hires bufs, 1 shifted to the right (half as intense)
discarding the least significant bit of the 4bit colour data
//latch data for hires pixel at falling edge of clk (hires is double pumped, see Denise)
always @(negedge clk)
     hresbuf[11:0]<={redin2[3:0],greenin2[3:0],bluein2[3:0]};
     hresbuf2[11:0]<={1b0,redin2[3:1],1b0,greenin2[3:1],1b0,bluein2[3:1]};

Down at the bottom of the module:

Set up a second line buffer ( if sufficient RAM avail in the S3400?)
using the shifted hirebuf2, plus similar shifts in low byte.
always @(posedge clk)
   linebuf[addr[8:0]]<={hresbuf,redin2[3:0],greenin2[3:0],bluein2[3:0],_hcsync,addr[9]};
   linebuf2[addr[8:0]]<={hresbuf2,1b0,redin2[3:1],1b0,greenin2[3:1],1b0,bluein2[3:1],_hcsync,addr[9]};
.....
always @(posedge vgaclk)
   if(vce && !vgahorbeam[0])
               if (!verbeam)
                  // even line, display as normal
      vgadata<=linebuf[vgahorbeam[9:1]];
               else
                  // odd line, show the half intensity data
                  vgadata<=linebuf2[vgahorbeam[9:1]];

Hope this helps.

Cheers,
Leslie

Redskull @ Digital Corruption

Since then many things have changed in the core.

Maybe you are able to build in this nice feature :)
Sascha


PS: See, some other parties are also developing on Minimig core and nobody knows for sure what and where the current state is.... Therefor we need a central place to share and base on. It could be this forum or the already mentioned sourceforge :)

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Top
 Profile  
 
 Post subject: Re: Any update on new firmware release?
PostPosted: Sun Jan 04, 2009 7:51 pm 
Offline

Joined: Mon Dec 01, 2008 1:23 pm
Posts: 55
Email sent but here it is again:

Just an idea for the firmware update;

It would be cool if the games automatically ordered themselves alphabetically AND when you select DF0 (to get the list) the list is in alphabetical order BUT if you press P on the keyboard it takes you to the first game starting with P (Pinball Dreams for example), you then press Z and it takes you to Zool, can this be implemented?

Ciao


Top
 Profile  
 
 Post subject: Re: Suggestions for improved ADF-file access
PostPosted: Sun Jan 04, 2009 10:39 pm 
Offline

Joined: Sun Dec 07, 2008 1:43 am
Posts: 26
Neat idea :)

I have been thinking myself of multi disk games and the tedious work of changing disks.
Now with the improved feature to use df0: to df4: in the upcoming core couldn't the Minimig be made to automatically mount df1: to df3: when you insert df0: based on the ADF-file names?

Games with more than four discs would of course still require manual swapping.

As I understand the PIC can't be made to do this due to memory requirements (that affects the current issues with no sub folders and long file names to) but the ARM version might.


Top
 Profile  
 
 Post subject: Re: Suggestions for improved ADF-file access
PostPosted: Mon Jan 05, 2009 9:33 am 
Offline

Joined: Mon Dec 01, 2008 1:23 pm
Posts: 55
>>Neat idea

Thanks! ;-)

I have received an email from Jakub and he says he will implement it in the following update (he also thought about that) :-)

>>I have been thinking myself of multi disk games and the tedious work of changing disks.
Now with the improved feature to use df0: to df4: in the upcoming core couldn't the Minimig be made to automatically mount df1: to df3: when you insert df0: based on the ADF-file names?

You need Jakub to answer that, but that sounds good :-)


Top
 Profile  
 
 Post subject: Re: Any update on new firmware release?
PostPosted: Mon Jan 05, 2009 12:59 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1405
Location: .de
TheDaddy wrote:
Email sent but here it is again:

Just an idea for the firmware update;

It would be cool if the games automatically ordered themselves alphabetically AND when you select DF0 (to get the list) the list is in alphabetical order BUT if you press P on the keyboard it takes you to the first game starting with P (Pinball Dreams for example), you then press Z and it takes you to Zool, can this be implemented?

Ciao


Nice idea after all. Right now I help myself to get an A-Z order in adf files by using "total commander" or in Linux "mightnight commander". First move all .adf into a sub folder and then move them back by "select all" to the root dir.
This only take about 4-5 secs and very little SD/MMC write cycle including a sorted .adf list in Minimig :)

To the PIC it would take a longer time to process the pre-sorting and also need some kind of memory to store the sorting. saving them in SD or EEPROM would only take longer AND also require a flash write time as well!
As long as a manual sorting is possible we should use it. I dont want to wait e.g. 10 secs before the whole .adf list is sorted out.

But first let Jakub release the next firmware!
I hope it will come soon... too much development could lead to "it is still not ready/good enough..." and nobody will "ever" see it...

As mentioned even incomplete and bugged releases could help (others) to find bugs and implement new features :)

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Top
 Profile  
 
 Post subject: Re: Suggestions for improved ADF-file access
PostPosted: Sun Jan 18, 2009 8:26 am 
Offline

Joined: Thu Dec 11, 2008 5:38 pm
Posts: 28
Why not include support for fat32 file system with subdirs ?
Renaming adf files is a bit boring...

And maybe support for SDHC too ?

Like in the 1541 Ultimate :mrgreen:


Top
 Profile  
 
 Post subject: Re: Suggestions for improved ADF-file access
PostPosted: Sun Jan 18, 2009 9:22 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1405
Location: .de
I think the current PIC has too little flash memory space to support FAT32 and all the other features. Highly possible that the ARM replacement board can take all of them and even more. Lets see what Jakub is presenting us in the next release. Im really looking forward to it :)

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Top
 Profile  
 
 Post subject: Re: Minimig Core / Firmware Updates
PostPosted: Mon Feb 23, 2009 6:45 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1405
Location: .de
Currently Im working on the last few core bugs in Minimig. This DDFSTRT chip register acts strange to me.
In real A500 OCS (Rev. 5) the change of register 0x092 did not show the same effect as in Minimig.
I found an old mega-demo with a very nasty display bug, even in current WinUAE V1.5.0! The horizontal scrolling is broken. Instead of smooth scrolling its jumping 16 pixel left/right, also the surrounding bitplane is very warped.

Entering Minimigs ActionReplay, setting chip register DDFSTRT (0x092) from 0x002A to 0x0028 will eliminate this bug totally. The whole screen looks like on A500 without any difference.

Strange enough in real A500 the same demo works even with DDFSTRT set to 0x002A (default in demo) AND also set to 0x0028!! But setting both Minimig and A500 registers value to e.g. 0x002C will show the same "destroyed screen" on both machine.

This bug could be caused by DMA start/stop handling, in fact Minimig shows at the right screen border a blank/black part of about 8 pixel. Real Amiga display is continuous filled with bitplane crap. This demo uses some bitplane shifting effect done by setting BPLCON1 in copperlist.

So where is the point? Also wherer to find the trouble? Anyone has a clue?
The well sounding name of this demo is "The Axxholes Band" in "Mega-Demo #1". Can be found here.

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 19 posts ]  Go to page 1, 2  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Translated by Xaphos © 2007, 2008, 2009 phpBB.fr