Reviving the Vera project!

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

Moderator: MaxCoderz Staff

User avatar
JoostinOnline
Regular Member
Posts: 133
Joined: Wed 11 Jul, 2007 10:42 pm
Location: Behind You

Post by JoostinOnline »

If you didn't mention the bug in your readme, then it is an easter egg ;)
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Post by Timendus »

Aren't you people amazingly funny... :)
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
Art_of_camelot
Regular Member
Posts: 124
Joined: Sun 09 Sep, 2007 8:50 pm
Location: The dark side of the moon
Contact:

Post by Art_of_camelot »

And then comes the deeply philosophical question whether something is a bug or a feature.
Meh, You say "TOE-MAY-TOE" I say "TOE-MAH-TOE". :P
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Post by Timendus »

Yay, we've got memory allocation... well, most of it :)

Application programmers are going to love this: RAM applications can allocate up to about 15kb of memory for whichever use. Flash applications should (soon) be able to allocate twice as much. Compare that to being stuck with saferams 1, 2 and 3 ;)

How The Stuff Works
How To Use The Stuff

As always, feedback and suggestions are welcome!
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
kv83
Maxcoderz Staff
Posts: 2735
Joined: Wed 15 Dec, 2004 7:26 pm
Location: The Hague, Netherlands
Contact:

Post by kv83 »

Maybe I missed something, but what is the advantage of using memory-allocation on a calculator? :)
Image
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Post by Timendus »

I forgot to mention that we've also introduced a "scratchpad" of 50 bytes in kernel memory that developers can use if they just quickly need to dump a few bytes.

But kv, imagine a greyscale game for Vera, for example. You shouldn't have to use im2 because you can hook your interrupt handler in the im1 timer interrupt and tweak the timer to suit your needs, which saves you setting up a jump table and relocating your interrupt routine. Also, you can just allocate two 768 bytes memory regions for the seperate display buffers without worrying where they end up. Then, you allocate a few k to uncompress your map or sprite data... You see the picture? :)

Edit: Had to go get lunch, here's the rest of it :)

Also, we're thinking about adding some kind of task switching thing (think "alt tab", not real multitasking) on the kernel level, which will require us to seperate application memory, which is a thing you can't do with static saferams, and you can with allocated memory. On the VM level we're even considering real multitasking.

Vera is being written to be fun for developers, not necessarily to be a good calculator, so everything that's now state of the art in our little developer community (greyscale, hopefully multi calc linking, perhaps even some of Ben's hardware hacks) should be a lot easier to do on Vera, or even get supported by default by the kernel. This will enable people to look beyond the obvious and be truely creative, I hope.
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
tr1p1ea
Maxcoderz Staff
Posts: 4141
Joined: Thu 16 Dec, 2004 10:06 pm
Location: I cant seem to get out of this cryogenic chamber!
Contact:

Post by tr1p1ea »

Well you will have to allocate a single 1.5KB buffer for a good grayscale routines active buffers since the routine relies on them being sequential in memory.
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."
Image
Image
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:

Post by Art_of_camelot »

I don't know that there is really any practical use for multi-tasking. I can't really see many people getting too much use out of that feature if you were to include it in Vera. I don't know how much space it would take to implement a muti-tasking feature either, but either way it seems rather superfluous to me.
User avatar
Timendus
Calc King
Posts: 1729
Joined: Sun 23 Jan, 2005 12:37 am
Location: Netherlands
Contact:

Post by Timendus »

Art_of_camelot wrote:I don't know that there is really any practical use for multi-tasking. I can't really see many people getting too much use out of that feature if you were to include it in Vera.
I wrote:Also, we're thinking about adding some kind of task switching thing (think "alt tab", not real multitasking) on the kernel level [...] On the VM level we're even considering real multitasking.
VM != Vera

Vera == kernel
VM == application

Task switching != multitasking

Think of it like a mobile phone, where you can jump back to the main menu at any point to do something completely different, and when you close the "window" it'll return to where you were. Think of it like Alt+Tab (only not windowed, so applications fill the whole screen), and only the visible application gets processor time. Think of it like the ultimate teacher key, where you simply switch to your CAS application from your game with a keystroke when a teacher walks by, and switch back when he leaves.

Plans for the VM aren't very clear yet, but it would be fun to have multitasking built in. We'll see what the possibilities are, and how useful they are with respect to the language.
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 »

I can't believe it has been so long since we posted anything on here. I tried to tell myself that everyone was just busy, but I guess we (mostly me) finally have to accept that this will probably never be finished :cry:
But who knows, maybe someday another team will come along and finish the project.
"Macs are the Perfect Computers", said the Perfect Idiot.
Image
Testing for:
Vera
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 »

Hey dude :)

I've been playing with it a bit just a month or two ago, but haven't made much progress. I've made an include file for "Vera applications" and written a few small apps, but the problem is that the binaries still need to be compiled into the kernel, because we don't have linking or a file storage system yet (so if anyone wants to contribute to that... ;)). Ben gave me his link routines, but I haven't got the time (or the motivation) to work on it right now.

It's not really dead, it's just waiting for a surge of interest in z80. The forum isn't much livelier, is it? ;)
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 »

I am glad to hear that. :D I wish I was able to help more at the moment, but since I know so little about asm, the only thing I can offer is my "testing" calculator (bought it broken for $15 and fixed it).
"Macs are the Perfect Computers", said the Perfect Idiot.
Image
Testing for:
Vera
magicdanw
New Member
Posts: 30
Joined: Mon 16 Jul, 2007 7:02 am

Re: Reviving the Vera project!

Post by magicdanw »

If anyone can point me in a direction that needs work, I might be interested in helping out...
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 »

Good to hear! :)

http://vera.timendus.com/
svn://timendus.student.utwente.nl/vera
SVN user/pass: vera/calcloversplace
If you want an account on the wiki/to be added to the mailinglist, drop me a line.

Like I said; we really need file storage and TI-OS compatible link routines. Any help in those directions would be greatly appreciated!
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 »

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 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.

http://www.retroleum.co.uk/z80-filesystem.html

One important thing I'm worried about, though, is if the filesystem is intended for flash memory. The smallest sector is 64kb, which will have to be erased and rewritten for all file saves. Therefore, we'll want to implement some form of wear-leveling. TI-OS had its garbage collection, but that was pretty lame. I think we can come up with something better. Perhaps, every time a file is written, the sector its in is copied (with changes) to a new sector (not a swap sector, but a legit sector) and the old sector is marked as dirty, waiting to be erased and used later. The sectors could be kept in a sorted list, so that they aren't re-used too often, and if a sector is ever found to be faulty, it could be taken off the list, so that the whole calculator isn't useless!

I'm afraid I'm in the middle of a cappella hellweek, and as a result I can't let myself spend my free time on much else besides studies for university classes. But once things settle down, I'd love to get more involved in this project!

Update: I'm a dum-dum! Functioning on very little sleep, so sorry about a mistake I made about how to do wear-leveling. It's not as bad as I thought at first. 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. I'm confused....gonna have to think about this one some more. Figure out what we want to do to keep speed up and wear down....Sleep would help, that's for sure. Gonna have to wait a bit for that though..... :(

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! 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! :)
Post Reply