Would CMD prompt/Terminal be possible on the Prizm?
Yes it would be possible to do it.
 100%  [ 10 ]
No it would not be possible.
 0%  [ 0 ]
Total Votes : 10

So would it be possible to put a Command prompt or terminal on the prizm. If possible what could we be able to do with it? What language would be best to program it in?

Put any ideas below.

[edit]Any ideas on how/where/what to start it are welcome.
I think it would be a good idea to do it in C, since there aren't any other languages that I know of that support read/write.

Some ideas for features:

- file moving, copying, and reading.
- simple math
So I've come up with a list of features I want to put in this app. They are as follows:

Code:
change directory
clear screen
copy files
delete files
list files and folders in current directory
move files
rename files and folders
make folders
turn off calc
exit to menu
app version number
read txt files
basic math(+,-,*,/)
display text on the screen
Will it be able to access the main memory as well as the storage memory?
Spenceboy98 wrote:
Will it be able to access the main memory as well as the storage memory?


I'm hoping I can make it so unknown until I get there. Right now I'm figuring out how everything will work before I hit the coding part of it.
Any ideas on how to solve this?

http://pastebin.com/yueWEiQR

Any help would be great!
Are you using the latest version?

(it's 3.1)
http://nspforge.unsads.com/p/nspireio/downloader

I can never install it correctly, but maybe you can. Razz
Spenceboy98 wrote:
Are you using the latest version?

(it's 3.1)
http://nspforge.unsads.com/p/nspireio/downloader

I can never install it correctly, but maybe you can. Razz


no and I can't figure it out either
*bump*
krazylegodrummer56 wrote:
Any ideas on how to solve this?

http://pastebin.com/yueWEiQR

Any help would be great!
In short, I didn't worked on NspireIO since a while and the Prizm part isn't quite up to date with the Nspire part.

Life sure is demanding. Maybe I'll check this out when I get less busy. Until then, someone wanna help?
the build i'm using is the one that is posted on the prizmio topic, not the latest build of nspieio.
Oh okay. I don't really see why it would choke on that line, unless it conflicts with something else?

And returning to the OP, I wonder if a (partial) POSIX compatibility layer would be possible? That would be nice having some sort of bash prompt running on the calc.
juju2143 wrote:
Oh okay. I don't really see why it would choke on that line, unless it conflicts with something else?


no idea, the error states that something is missing before false,
also that a semicolon is expected before bool.


Code:
typedef enum{false, true} bool;


*edit* so I tried commenting it out agaiin and it just so happened to work!

now, is there somewhere i could find an example of the command


Code:
nio_InitConsole(nio_console* c, int size_x, int size_y, int offset_x, int offset_y, char background_color, char foreground_color);


in action?
*bump*
any ideas on these problems?


Code:
Main.o: In function `_main':
Main.c:(.text.startup+0x98): undefined reference to `_nio_printf'
Main.c:(.text.startup+0xa4): undefined reference to `_nio_GetStr'
Main.c:(.text.startup+0xac): undefined reference to `_nio_InitConsole'
Main.c:(.text.startup+0xb0): undefined reference to `_nio_DrawConsole'
Main.c:(.text.startup+0xb8): undefined reference to `_nio_CleanUp'
collect2: ld returned 1 exit status
make[1]: *** [H:/Programming/PrizmSDK-0.3/projects/CMDZM/CMDZM.bin] Error 1
make: *** [build] Error 2
You're not linking against the library that provides the nio_* functions. You may not even be building it.
Tari wrote:
You're not linking against the library that provides the nio_* functions. You may not even be building it.


I included prizmio.h in my program which has th nio_* functions but it seems it just doesn't like them.
krazylegodrummer56 wrote:
Tari wrote:
You're not linking against the library that provides the nio_* functions. You may not even be building it.


I included prizmio.h in my program which has th nio_* functions but it seems it just doesn't like them.


You have it included, but do you have it linked with the lib files? What does your makefile look like?
Spence I placed prizmio.h into the include. either way here is my makefile.


Code:
#---------------------------------------------------------------------------------
# Clear the implicit built in rules
#---------------------------------------------------------------------------------
.SUFFIXES:
#---------------------------------------------------------------------------------
# Set toolchain location in an environment var for future use, this will change
# to use a system environment var in the future.
#---------------------------------------------------------------------------------
ifeq ($(strip $(FXCGSDK)),)
export FXCGSDK := $(abspath ../../)
endif

include $(FXCGSDK)/common/prizm_rules


#---------------------------------------------------------------------------------
# TARGET is the name of the output
# BUILD is the directory where object files & intermediate files will be placed
# SOURCES is a list of directories containing source code
# INCLUDES is a list of directories containing extra header files
#---------------------------------------------------------------------------------
TARGET      :=   $(notdir $(CURDIR))
BUILD      :=   build
SOURCES      :=   src
DATA      :=   data 
INCLUDES   :=

#---------------------------------------------------------------------------------
# options for code and add-in generation
#---------------------------------------------------------------------------------

MKG3AFLAGS := -n basic:CMDZM -i uns:../unselected.bmp -i sel:../selected.bmp

CFLAGS   = -std=c99 -Os -Wall $(MACHDEP) $(INCLUDE) -DPRIZM
CXXFLAGS   =   $(CFLAGS)

LDFLAGS   = $(MACHDEP) -T$(FXCGSDK)/common/prizm.ld -Wl,-static -Wl,-gc-sections

#---------------------------------------------------------------------------------
# any extra libraries we wish to link with the project
#---------------------------------------------------------------------------------
LIBS   :=   -lfxcg -lgcc

#---------------------------------------------------------------------------------
# list of directories containing libraries, this must be the top level containing
# include and lib
#---------------------------------------------------------------------------------
LIBDIRS   :=

#---------------------------------------------------------------------------------
# no real need to edit anything past this point unless you need to add additional
# rules for different file extensions
#---------------------------------------------------------------------------------
ifneq ($(BUILD),$(notdir $(CURDIR)))
#---------------------------------------------------------------------------------

export OUTPUT   :=   $(CURDIR)/$(TARGET)

export VPATH   :=   $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
               $(foreach dir,$(DATA),$(CURDIR)/$(dir))

export DEPSDIR   :=   $(CURDIR)/$(BUILD)

#---------------------------------------------------------------------------------
# automatically build a list of object files for our project
#---------------------------------------------------------------------------------
CFILES      :=   $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
CPPFILES   :=   $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
sFILES      :=   $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
SFILES      :=   $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.S)))
BINFILES   :=   $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))

#---------------------------------------------------------------------------------
# use CXX for linking C++ projects, CC for standard C
#---------------------------------------------------------------------------------
ifeq ($(strip $(CPPFILES)),)
   export LD   :=   $(CC)
else
   export LD   :=   $(CXX)
endif

export OFILES   :=   $(addsuffix .o,$(BINFILES)) \
               $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) \
               $(sFILES:.s=.o) $(SFILES:.S=.o)

#---------------------------------------------------------------------------------
# build a list of include paths
#---------------------------------------------------------------------------------
export INCLUDE   :=   $(foreach dir,$(INCLUDES), -iquote $(CURDIR)/$(dir)) \
               $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
               -I$(CURDIR)/$(BUILD) -I$(LIBFXCG_INC)

#---------------------------------------------------------------------------------
# build a list of library paths
#---------------------------------------------------------------------------------
export LIBPATHS   :=   $(foreach dir,$(LIBDIRS),-L$(dir)/lib) \
               -L$(LIBFXCG_LIB)

export OUTPUT   :=   $(CURDIR)/$(TARGET)
.PHONY: $(BUILD) clean

#---------------------------------------------------------------------------------
$(BUILD):
   @[ -d $@ ] || mkdir $@
   @make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile

#---------------------------------------------------------------------------------
export CYGWIN := nodosfilewarning
clean:
   $(RM) -fr $(BUILD) $(OUTPUT).bin $(OUTPUT).g3a

#---------------------------------------------------------------------------------
else

DEPENDS   :=   $(OFILES:.o=.d)

#---------------------------------------------------------------------------------
# main targets
#---------------------------------------------------------------------------------
$(OUTPUT).g3a: $(OUTPUT).bin
$(OUTPUT).bin: $(OFILES)


-include $(DEPENDS)

#---------------------------------------------------------------------------------
endif
#---------------------------------------------------------------------------------
I'm assuming you're still using v0.1 of prizmio. This is what it says in the readme:

Code:
Usage
-----
Add "-lprizmio" to LDFLAGS in your Makefile and include
"prizmio.h" in your code.


Try adding "-lprizmio" to your LDFLAGS to link the lib.

Code:
F:/Programming/PrizmSDK-0.3/lib\libprizmio.a(console.o): In function `_nio_Scrol
lDown':
console.c:(.text+0x690): undefined reference to `_malloc'
console.c:(.text+0x694): undefined reference to `_memset'
console.c:(.text+0x69c): undefined reference to `_free'
F:/Programming/PrizmSDK-0.3/lib\libprizmio.a(console.o): In function `_nio_Clear
':
console.c:(.text+0x7f8): undefined reference to `_memset'
F:/Programming/PrizmSDK-0.3/lib\libprizmio.a(console.o): In function `_nio_InitC
onsole':
console.c:(.text+0x850): undefined reference to `_malloc'
F:/Programming/PrizmSDK-0.3/lib\libprizmio.a(console.o): In function `_nio_print
f':
console.c:(.text+0x9f4): undefined reference to `_memset'
console.c:(.text+0x9f8): undefined reference to `_vsprintf'
F:/Programming/PrizmSDK-0.3/lib\libprizmio.a(console.o): In function `_nio_Clean
Up':
console.c:(.text+0xb14): undefined reference to `_free'
collect2: ld returned 1 exit status


Any ideas on how to solve these errors
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 2
» All times are UTC - 5 Hours
 
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 vote in polls in this forum

 

Advertisement