Reviving the Vera project!

A forum where you can announce your awesome project(s).

Moderator: MaxCoderz Staff

User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Re: Reviving the Vera project!

Post by Timendus »

magicdanw wrote:I'm kind of interested in the file system implementation. In Vera, will there only be a filesystem in flash memory, and all ram will considered volatile? Or will there also be a ram filesystem?
I'm not sure we agreed on the latter, but yes, the main file system should be entirely in flash, not using the RAM.
I found this website, where someone describes a simple filesystem he/she wrote for a small computer (z80, in fact!) I could write a filesystem based on his/her specs, with modifications agreed upon by the Vera team.
That would be totally awesome :)
We can have a bit that marks a file valid or invalid, and when the file has to be re-saved with changes, we mark the original invalid, and write the new valid one below the files on whatever sector it fits in, and update pointers. Sector cycling only needs to happen when we run out of space on all the sectors and want to get rid of the invalid entries. Wait...darn, that's garbage collection.
Yes, but that's still probably the best way to do it. You don't want to erase the flash every time you need to save a new file. However; TI-OS garbage collect goes through the entire flash, if I'm not mistaken, and we could choose to garbage collect only one page "on the fly" when it is needed. That should make it responsive enough I hope?
Update Two: Hmm, I took another look at the filesystem driver page on the wiki. There are no specs for directories! Are we really going to make a filesystem a la TIOS, without directories? They're so useful!
I'm all for directories, and I think most people were.
You know, I think you'd better give me an account or add me to the mailing list, however I can communicate with team members. There are some things I want to talk about with the team! :)
Could you give me your e-mail address? PM it to me or something, I'll add you to the mailinglist. We don't check the wiki all that often ;)

Edit: Did I mention how great it is to see some outside interest in our project yet? I really appreciate you wanting to help us out with actual code on an actually useful part of the system :rofl:
http://clap.timendus.com/ - The Calculator Link Alternative Protocol
http://api.timendus.com/ - Make your life easier, leave the coding to the API
http://vera.timendus.com/ - The calc lover's OS
magicdanw
New Member
Posts: 30
Joined: Mon 16 Jul, 2007 7:02 am

Re: Reviving the Vera project!

Post by magicdanw »

Actually, it's about 3/4 that I'm interested in the project, and 1/4 that I know my CS 140 curriculum already, and I'm freakin bored! :twisted:
User avatar
calc84maniac
Regular Member
Posts: 112
Joined: Wed 18 Oct, 2006 7:34 pm
Location: The ex-planet Pluto
Contact:

Re: Reviving the Vera project!

Post by calc84maniac »

Ooh, idea! What about whenever you fill a flash sector, rewrite it except with deleted files removed! Might work...
~calc84maniac has spoken.

Projects:
F-Zero 83+
Project M (Super Mario for 83+)
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Re: Reviving the Vera project!

Post by Timendus »

The problem with that is that you get seemingly random delays when working with files. We'll have to choose if we want seemingly random delays or a generally slow file system or leaving garbage collecting to the user or have a very inefficient file system...

Edit: also, it wouldn't have wear levelling, and it would destroy your memory pretty fast ;)
http://clap.timendus.com/ - The Calculator Link Alternative Protocol
http://api.timendus.com/ - Make your life easier, leave the coding to the API
http://vera.timendus.com/ - The calc lover's OS
User avatar
driesguldolf
Extreme Poster
Posts: 395
Joined: Thu 17 May, 2007 4:49 pm
Location: $4080
Contact:

Re: Reviving the Vera project!

Post by driesguldolf »

Timendus wrote:The problem with that is that you get seemingly random delays when working with files. We'll have to choose if we want seemingly random delays or a generally slow file system or leaving garbage collecting to the user or have a very inefficient file system...

Edit: also, it wouldn't have wear levelling, and it would destroy your memory pretty fast ;)
However I think the method he uses would suit Vera quite well, storing stuff in fixed size blocks will make garbage collection very easy.
Also his concept can easily be expanded for wear levelling, allow the BAT block anywhere and keep a reference to it in RAM, if RAM gets reset you could just search every block until you find it. Same with the root folder.

Some changes I'd make for Vera:
Reduce the block size to 512 or 1024 bytes (32kb is a lot... On my 80gb hd drive, it uses blocks of 4kb)
Drop all "Not used" space (which he used to pad his header).
Allow directories to span multiple blocks.

I think we can actually pull this off :D
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Re: Reviving the Vera project!

Post by Timendus »

Dries, I think we're talking about different methods... My reply was to calc84maniac, not to the link magicdanw posted, which is what I guess you're referring to ;)

Anyway, I suggest we leave this subsystem to magicdanw to play with, I wouldn't want to tell him how to implement things and take out all the fun :mrgreen: Unless he's interested in some suggestions and feedback, of course?

Edit: just read through the "PQSF" specification magicdanw posted, and it does look promising. I completely agree with your suggested modifications. I'd like to add though that we shouldn't forget to add a field in the block header to indicate that it needs to get garbage collected, and a way to update directory pointers when blocks get moved around. And also that we need to keep in mind that we can't load two flash pages into addressable memory at once, unless we disable interrupts, which we don't want unless absolutely necessary. My point being: if garbage collecting means having to move every block or two from one flash page to another individually, using the RAM as temporary storage, it could still take a while. I could think of some solutions, but I'm just pointing out the obvious here just in case ;)

Might I suggest we move this discussion to the mailinglist?
http://clap.timendus.com/ - The Calculator Link Alternative Protocol
http://api.timendus.com/ - Make your life easier, leave the coding to the API
http://vera.timendus.com/ - The calc lover's OS
User avatar
driesguldolf
Extreme Poster
Posts: 395
Joined: Thu 17 May, 2007 4:49 pm
Location: $4080
Contact:

Re: Reviving the Vera project!

Post by driesguldolf »

Timendus wrote:Dries, I think we're talking about different methods... My reply was to calc84maniac, not to the link magicdanw posted, which is what I guess you're referring to ;)
Whoops. My bad.
Might I suggest we move this discussion to the mailinglist?
Oh yeah, almost forgot we had one. :P
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Re: Reviving the Vera project!

Post by Timendus »

For old time's sake: The Vera wiki is up again at http://vera.timendus.com/
Huzzah! :mrgreen:
http://clap.timendus.com/ - The Calculator Link Alternative Protocol
http://api.timendus.com/ - Make your life easier, leave the coding to the API
http://vera.timendus.com/ - The calc lover's OS
User avatar
JoostinOnline
Regular Member
Posts: 133
Joined: Wed 11 Jul, 2007 10:42 pm
Location: Behind You

Re: Reviving the Vera project!

Post by JoostinOnline »

Haha, I can't believe it! Apparently I subscribed to this topic years ago. I've moved on to creating applications for the Wii (my latest is http://tinyurl.com/SettingsEditorGUI), but if you want to start this project up again, I might be able to help out this time. I know Java, SCHEME, and I'm learning C.

Man, this brings back memories.
"Macs are the Perfect Computers", said the Perfect Idiot.
Image
Testing for:
Vera
User avatar
Art_of_camelot
Regular Member
Posts: 124
Joined: Sun 09 Sep, 2007 8:50 pm
Location: The dark side of the moon
Contact:

Re: Reviving the Vera project!

Post by Art_of_camelot »

Another pleasant surprise Timendus. It's nice to see you still around as well JoostinOnline. :) I haven't seen you in ages..
Projects:
Projects:TBA-Soonish. :)
Updated 5/3/12
Post Reply