Jump to content
43oh

Paradiso UI Boost (and win one)


Recommended Posts

  • Replies 49
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

This is awesome. I was just looking at the LMC wiki the other night , and wondered what exactly it would be implemented with... You think you could pm or post the source?

i am attaching this lmc.c file mainly for the benefit of oPossum and whoever is interested in studying this ui boost layout. so consider it kind of a preview. before i finish the rest of the project

I see it has been a while since you have been here simpleavr. You might want to try out CCS V5.3 on linux. It won't allow you to upload to a launchpad but you can use it to compile code under CCS in l

the code is really confusing right now. i kept trying various things w/. it. it has;

  • the LMC interpreter,
  • part of MSP430 assembler/disassembler that i just started recently,
  • a working lunar lander (not physics / math correct)
  • a digit clock + hw key tester
  • a number counter / timer tester.
  • etc.

 

the LMC machine is small, only took one evening. it was actually very simple. only a few instructions and one addressing mode.

the harder work was done from earlier projects, a little bios to do basic io (hex and decimal) and basic timing.

the "bios" now can take one key, take a numeric value, output char, hex / dec values, string and has a timer.

there is also a mini monitor to fetch / store 256byte segments (f000, f100, f200,...) to / from ram at 0x280 for editing. the LMC code after edit goes back to the flash so u can run them again at next power-up session.

i would probably clean-up the code so it just do LMC for now and have it on github within this week. so whoever is interested can play w/ it.

 

the real hard part is the msp430 assembler / disassembler i am working on. the instructions are about 30 opcodes which is reasonable to work w/. but there are many addressing modes.

 

there are funny addressing scheme for performance, which is tricky to implement. ex. mov #7, r4 and mov #8, r4 are very different and one is 4 bytes when the other is 2 byte instruction.

 

and the real obstacle for me right now is to handle the psuedo-opcodes (ex. br xxx = mov xxx,pc) mappings. i guess i did not spend time to properly understanding these details before diving in to do the framework / skeleton. i might have to abandon this and go for something simpler (may be an integer basic).

 

well, thanks for your comments. the LMC is very nice and fun to play w/.

Link to post
Share on other sites

i am attaching this lmc.c file mainly for the benefit of oPossum and whoever is interested in studying this ui boost layout.

so consider it kind of a preview. before i finish the rest of the project and do proper write-up.

 

lmc.c

 

this one file features

. lmc machine, w/ 2 examples.

. led multiplexing

. button handling.

 

i had cleanup the code. tested built under cygwin mspgcc and is less than 4k deployed.

Link to post
Share on other sites

Darn you Linux-ish users... (and the forum coders who won't let me use "Enter" whilst typing) :grin:

 

CCS reports errors with the code:

"#19 extra text after expected end of number" Source: main.c /Paradiso line 269 C/C++ Problem

 

Line 269-279=

static const digit2ports[][3] = { SEGS_PORT(LTR_0), SEGS_PORT(LTR_1),
SEGS_PORT(LTR_2), SEGS_PORT(LTR_3), SEGS_PORT(LTR_4), SEGS_PORT(LTR_5),
SEGS_PORT(LTR_6), SEGS_PORT(LTR_7), SEGS_PORT(LTR_8), SEGS_PORT(LTR_9),
SEGS_PORT(LTR_A), SEGS_PORT(LTR_, SEGS_PORT(LTR_C), SEGS_PORT(LTR_d),
SEGS_PORT(LTR_E), SEGS_PORT(LTR_F), SEGS_PORT(LTR_g), SEGS_PORT(LTR_h),
SEGS_PORT(LTR_I), SEGS_PORT(LTR_J), SEGS_PORT(LTR_k), SEGS_PORT(LTR_L),
SEGS_PORT(LTR_m), SEGS_PORT(LTR_n), SEGS_PORT(LTR_o), SEGS_PORT(LTR_P),
SEGS_PORT(LTR_q), SEGS_PORT(LTR_r), SEGS_PORT(LTR_S), SEGS_PORT(LTR_t),
SEGS_PORT(LTR_u), SEGS_PORT(LTR_v), SEGS_PORT(LTR_w), SEGS_PORT(LTR_X),
SEGS_PORT(LTR_y), SEGS_PORT(LTR_Z), SEGS_PORT(BLANK), SEGS_PORT(LTRmn)
};

Link to post
Share on other sites

I see it has been a while since you have been here simpleavr. You might want to try out CCS V5.3 on linux. It won't allow you to upload to a launchpad but you can use it to compile code under CCS in linux.

 

http://software-dl.ti.com/dsps/dsps_public_sw/sdo_ccstudio/CCSv5/CCS_5_3_0/exports/ReleaseNoteRC1.htm

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...