x
This website is using cookies. We use cookies to ensure that we give you the best experience on our website. More info. That's Fine
 
 

Windows CE SDK Which version do I need for dev?
Moderators: chiark

Jump to page : 1 2
Now viewing page 2 [15 messages per page]

Forums · General Discussion · Developers Arena

Posted 2018-12-10 6:38 PM
#
Factorite (Elite)

1002525


Posts:
163
Member Nº:
6987
Status:
Quote
forbidden64 - 2018-12-09 5:42 PM

Definitely a lot of stuff to sort through. I got my HC-4600 today. The battery components are yet to arrive. When then do, I can pry open the battery and solder everything together. I can't wait to turn it on! Initially, all I will have for data transfer is the IRda port. I reckon that will get old fast. Perhaps immediately. I will go with eVT 3 for now at least as a matter of course. It is free, and also recommended. Dr Dobbs Journal! I was recently reading an issue of that(much older) where they were making a BASIC language that could fit inside of 4K and had math functions with the addition of hacking in a calculator chip to your computer(1976). No such chip is available now, so I doubt I could replicate the experiment.

Anyway, reading the article...It seems to be a theme. Stick to the win 32 API as a general rule. Stray from that rule and prepare to do a lot of debugging. I will definitely bookmark this article. I bet there are a number of CE articles on there.

Speaking of which, do either of you know what Visual studio 6 Enterprise will run under? I have a Vista machine and a win 7 machine. It crashed immediately in windows 7. It's an "era accurate" VC++. I have no problem running it on my older machine...I switch off usage depending on compatibility needs. What are you guys running?


I primarily use eVT with the embedded visual C to target different SDKs. I also have education version of MSVC 6.0 and education version of the CE toolkit, but I think the license says that they can't be used for publishing apps. Hence I use the eVT package for the apps published on my site. I have these running on a laptop running Windows XP. Liked the setup of the machine so much that I cloned it into a VM executed from VirtualBox on a Linux variant OS (galliumOS).

My latest modification to a Windows CE app was actually built from the working VM. I added a timer to the ScrnGrab app, so I could re-focus the app that I wanted in the screenshot. The screenshot was the working port of TinyC (tcc) to run on the HP Jornada 820 natively to write apps on CE for CE.
 Top of the page
Posted 2018-12-10 8:47 PM
#


Administrator
H/PC Oracle

10000200020001001001001002525
+ Subscriber


Posts:
14467
Member Nº:
1
Location:
Fields End, UK
Status:
Quote
smb_gaiden - 2018-12-10 6:38 PM

Quote
forbidden64 - 2018-12-09 5:42 PM

Definitely a lot of stuff to sort through. I got my HC-4600 today. The battery components are yet to arrive. When then do, I can pry open the battery and solder everything together. I can't wait to turn it on! Initially, all I will have for data transfer is the IRda port. I reckon that will get old fast. Perhaps immediately. I will go with eVT 3 for now at least as a matter of course. It is free, and also recommended. Dr Dobbs Journal! I was recently reading an issue of that(much older) where they were making a BASIC language that could fit inside of 4K and had math functions with the addition of hacking in a calculator chip to your computer(1976). No such chip is available now, so I doubt I could replicate the experiment.

Anyway, reading the article...It seems to be a theme. Stick to the win 32 API as a general rule. Stray from that rule and prepare to do a lot of debugging. I will definitely bookmark this article. I bet there are a number of CE articles on there.

Speaking of which, do either of you know what Visual studio 6 Enterprise will run under? I have a Vista machine and a win 7 machine. It crashed immediately in windows 7. It's an "era accurate" VC++. I have no problem running it on my older machine...I switch off usage depending on compatibility needs. What are you guys running?


I primarily use eVT with the embedded visual C to target different SDKs. I also have education version of MSVC 6.0 and education version of the CE toolkit, but I think the license says that they can't be used for publishing apps. Hence I use the eVT package for the apps published on my site. I have these running on a laptop running Windows XP. Liked the setup of the machine so much that I cloned it into a VM executed from VirtualBox on a Linux variant OS (galliumOS).

My latest modification to a Windows CE app was actually built from the working VM. I added a timer to the ScrnGrab app, so I could re-focus the app that I wanted in the screenshot. The screenshot was the working port of TinyC (tcc) to run on the HP Jornada 820 natively to write apps on CE for CE.


It would be interesting to do a binary compare of the bin from each and see if the Edu. version is tattooed in some way.
 Top of the page
Posted 2018-12-15 7:40 PM
#
H/PC Newbie




Posts:
12
Member Nº:
35309
Location:
United States
Status:
Quote
C:Amie - 2018-12-10 4:33 AM

There is a CE 2.11 framework in the SCL, which can be targeted using newer Visual Studio releases using a .net CE 1.0 framework base. It's pretty generic after that. It is a compiled language, but it is managed code, so yes there is a performance hit. The real downside as you have already indicated is the framework bloat and the RAM requirement that goes along with it. The advantage is that it's newer, more accessible than C++ and have a broader class library behind it.

I don't mind C# or Java, both have their uses, although I prefer C#. I just do not like the way that Microsoft does things. Want to start a web project? Sure have 30MB of bloated "core" framework in which you are to write code the way we tell you to and wait 20 seconds every time you need to reinitialise your web-app. It is lazy and it has created a whole generation of programmers who think programming is downloading increasingly swollen ne bloated modules from GIT and mashing them together.

I don't suppose that I could encourage you to document your journey here could I? Record what you needed, issues you have overcome. "Developing for the H/PC in 2019"?


Wow, ya! That is a great idea!! It is daunting let me tell you. I'll do my best to take a journal of what I am doing and thinking so that later, I can pass it on to you. Then from there it can really give people a road map(much needed) from a total newb's perspective. I often do these types of "journals" when I am working on problems anyway. Just so that if I get frustrated and shelve it, I can pick up exactly where I left off. Or perhaps if I have to do the same thing again 4 years from now etc. Very often they come in handy later. At one point I had a folder called "How on earth did I do that" where I would spend weeks figuring out a problem and writing down everything I tried...and finally, finishing with what worked. That folder is sadly now lost. I recently did a "journal" modifying a game for the VIC-20 from PAL to NTSC screens so it is viewable and playable on an American TV set. I also did one for writing a game on a sharp wizard. I was even writing an internals manual for it, and had 100 pages done. This was crucial for assembly programming. Alas, that book will remain at 100 pages...

So far, I haven't been able to even turn my sharp Mobilon on. After all, it has 20 year old batteries inside and they don't charge. One of the curious "features" of this device is that it can't select between battery and power cable. Normally this is automatic. If the current drops on the charge wire, it allows current to pass from the battery using an inverter; otherwise not. The engineers at sharp really got lazy and just put the charge circuit in series with Vcc from the battery. Which is why this particular model is so cheap to buy...none of them turn on, even when plugged in(batteries don't hold any power). So, I guess my journal had better start with dismantling the battery pack on a Sharp Mobilon HC-4600 lol. I am replacing them with 4/5A size batteries (I couldn't source size single A anywhere unless I bought 3000 of them). I wired it up how I thought it would work, and it doesn't work that way...so I will take it apart find the actual terminals I need and wire it appropriately. Yes, I know buy cheap, pay dear. The other irony is that the serial cable will likely cost as much as the device($40). Although, if I can use CF cards I can avoid using RS232 entirely. I'll cross that bridge when I get there.

In the extreme case, I'll modify the darn thing so that it can have both plug in and battery power like it should have from the factory. The lazy way would be to terminate the battery and bypass the battery bay directly to Vcc. Then I can use it but it has to be plugged in at all times. This would be an absolute last resort if nothing else worked. The idea that if the power cord slips out you lose all your work is not very fun to me. I'll get the battery pack back in order before proceeding with anything else.

I agree about coding...I would rather code from scratch/use my own routines plugged in to my software or hand pick individual routines I need. not to plug in 3000 lines of code to use one extra command. I realize that in some cases this is not the best approach, and at least on devices like these where no internals manuals are available, it is crucial to use language features and libraries to access the parts of hardware you need(that gets my goat btw...how can I write super fast graphics libraries with no internals?). It would be cool if they had mapped the memory the same across all these devices; had open architecture; were forced to do this to make them windows compatible...but I have no clue how they did it. I imagine they used both identical memory mapping, combined with re-targeting the C code to cross compile for whatever CPU. That said, I can already hear my low level coder self peeping up and demanding I not try anything new and start reverse engineering the device for assembler coding. So, I'll ignore my curiousity there for a long while.
 Top of the page
Posted 2018-12-15 8:06 PM
#
H/PC Newbie




Posts:
12
Member Nº:
35309
Location:
United States
Status:
Quote
smb_gaiden - 2018-12-10 10:38 AM

Quote
forbidden64 - 2018-12-09 5:42 PM

Definitely a lot of stuff to sort through. I got my HC-4600 today. The battery components are yet to arrive. When then do, I can pry open the battery and solder everything together. I can't wait to turn it on! Initially, all I will have for data transfer is the IRda port. I reckon that will get old fast. Perhaps immediately. I will go with eVT 3 for now at least as a matter of course. It is free, and also recommended. Dr Dobbs Journal! I was recently reading an issue of that(much older) where they were making a BASIC language that could fit inside of 4K and had math functions with the addition of hacking in a calculator chip to your computer(1976). No such chip is available now, so I doubt I could replicate the experiment.

Anyway, reading the article...It seems to be a theme. Stick to the win 32 API as a general rule. Stray from that rule and prepare to do a lot of debugging. I will definitely bookmark this article. I bet there are a number of CE articles on there.

Speaking of which, do either of you know what Visual studio 6 Enterprise will run under? I have a Vista machine and a win 7 machine. It crashed immediately in windows 7. It's an "era accurate" VC++. I have no problem running it on my older machine...I switch off usage depending on compatibility needs. What are you guys running?


I primarily use eVT with the embedded visual C to target different SDKs. I also have education version of MSVC 6.0 and education version of the CE toolkit, but I think the license says that they can't be used for publishing apps. Hence I use the eVT package for the apps published on my site. I have these running on a laptop running Windows XP. Liked the setup of the machine so much that I cloned it into a VM executed from VirtualBox on a Linux variant OS (galliumOS).

My latest modification to a Windows CE app was actually built from the working VM. I added a timer to the ScrnGrab app, so I could re-focus the app that I wanted in the screenshot. The screenshot was the working port of TinyC (tcc) to run on the HP Jornada 820 natively to write apps on CE for CE.


Hey that is pretty cool! I have some experience using tinyC... CC65 compiler is based on that. I will definitely be toying around with that later... As for the screen grabber, I don't know enough to ask relevant questions yet about how you did that. Though, I will have them in time. Hopefully I can learn all this quickly.

I have never used VMware...heck as a computer collector that would be something close to a crime! Emulators...? I'm kidding of course. I use emulators all the time. However, I find something unsettling about emulating windows with windows...It shouldn't need to be. . In any case, it appears to work just fine with windows vista. If I have any trouble, I will set one up in linux on the same computer. One cool feature of these old Dell laptops is the hard drive can slide in and out like a cartridge. I bought an extra caddy and put linux on the second drive.

It seems like the Jornada 820/8 is what all the cool kids are using. Makes sense...it is the best one. The battery life is impressive as well for having a bright color screen. It is also fast at 203 mhz in comparison with my ~73mhz MIPS. Although, mhz aren't everything and mine is a legacy DEC processor . Mine also allegedly has a ram upgrade for 32 mb, which I'll find out if that is true when it turns on. it says 32 mb scribbled on the bottom with a sharpie, and there is a card in the bay. Promising...
 Top of the page
Posted 2018-12-15 10:45 PM
#


Administrator
H/PC Oracle

10000200020001001001001002525
+ Subscriber


Posts:
14467
Member Nº:
1
Location:
Fields End, UK
Status:
If it makes you feel any better VMWare workstation isn't an emulator, it's a class 2 hypervisor. It runs natively. No emulation. If you use hyper-v, you can run it as a class1 partition.

Perhap's you'd like to write up that power on mod too. I'm sure a lot of people would be interested in how to figure it out and implement.
 Top of the page
Posted 2018-12-16 3:51 AM
#
H/PC Newbie




Posts:
12
Member Nº:
35309
Location:
United States
Status:
Quote
C:Amie - 2018-12-15 2:45 PM

If it makes you feel any better VMWare workstation isn't an emulator, it's a class 2 hypervisor. It runs natively. No emulation. If you use hyper-v, you can run it as a class1 partition.

Perhap's you'd like to write up that power on mod too. I'm sure a lot of people would be interested in how to figure it out and implement.


That's an idea too...
For starters, I found this scribbled on paper circuit...a crudely drawn circuit but it does do the job(almost), and they did whack in capacitor in the correct places. Without that, you would have a power drop and the device would reset. However, the HC-mobilon situation gets even more complicated. This is why I called the engineers lazy. It would have been easier for them during design to have done something like I have in mind.
https://www.eevblog.com/forum/projects/batteryexternal-power-supply-...

He mentions the diode voltage drop which is ordinarily around .9V, with some being less. at 2.4V to start with that is unacceptable. The alternative would be to put the diode through a resistor to a transistor which is then connected to the external power, thereby eliminating the voltage drop...or adding a walton-cockroft multiplier to gain back 1 V. Further complicating matters is that nimh batteries don't like a full load when charging lol! This circuit as is would just explode the batteries. So in addition to the above change, a 100 mAh current limit would be required. This could easily be accomplished with the use of an operational amplifier, which normally can drive maximum 100 mAh on the output. However, then the question becomes...where on earth do I stuff all this circuitry????? Thanks sharp engineers....

That's why I am leaving my options open, and will likely stick with the original power unit setup. If I can find a decent amount of room for a small daughter board inside the machine, then game on! If I published it, I would have to make sure the average joe sparky could whack one together with some veroboard and very little experience.
 Top of the page
Posted 2018-12-16 9:22 AM
#


Administrator
H/PC Oracle

10000200020001001001001002525
+ Subscriber


Posts:
14467
Member Nº:
1
Location:
Fields End, UK
Status:
There are quite a few devices that require battery load in order to power from AC. A 101 explanation of what is going on and how to approach fixing it would be most informative.

Good old EEVblog.

There's no way a RPi will take a 0.9v drop, they're so finicky to begin with.

Sounds like you need to throw away the entire power control board and start again.

Interesting project. Wish I had any practical experience of what you were talking about!

If you would want to write any articles. You're welcome to publish here on the forums or we can edit them up into the support section.
 Top of the page
Posted 2018-12-17 2:24 AM
#
H/PC Newbie




Posts:
12
Member Nº:
35309
Location:
United States
Status:
Quote
C:Amie - 2018-12-16 1:22 AM

There are quite a few devices that require battery load in order to power from AC. A 101 explanation of what is going on and how to approach fixing it would be most informative.

Good old EEVblog.

There's no way a RPi will take a 0.9v drop, they're so finicky to begin with.

Sounds like you need to throw away the entire power control board and start again.

Interesting project. Wish I had any practical experience of what you were talking about!

If you would want to write any articles. You're welcome to publish here on the forums or we can edit them up into the support section.


Right, those are 3.3V for logic high. There is some allowance for variance in voltages, I imagine .9v isn't actually that bad. In my case it is running at 2.4v already, which is .9V below 3.3V...and apparently that was enough to generate a high state. Although, I imagine the fan out is terrible. In the case of the RPi, I imagine fan out is the principal reason it won't work at 2.4v(repeated voltage drops). At some point, you have to put a transistor to vcc(or more typically an array of OR gates for a bus signal in parallel), and the gate to the signal, this boosts you back to the highest voltage.

At the moment I don't have a lab. Most of my cool stuff is in storage. Yet, I do have some things at my disposal. However, I am not convinced there ever was a power control board. I noticed there is a thermal cut off installed in the battery compartment which would explain why none of these batteries work at all. namely, they were slammed with current and shut off when they got hot. those poor batteries had a pretty hard and short life as a result. They are supposed to be charged with 100mAh max. This ensures a long life. This device was probably meant to run for 2 years of daily use/3 years of sparse use and then never run again. Then you can buy sharp's newest offering for nearly $900!

If I do such a project, I will document it.
 Top of the page
Posted 2019-01-05 3:21 AM
#
H/PC Newbie




Posts:
12
Member Nº:
35309
Location:
United States
Status:
Small update. I was wrong about the battery charge circuitry. Very wrong. Sharp did an amazing job designing that(Several safety fail safes as well as monitoring the temperature/current flow). I now have the device partially functional. However, the digitizer doesn't work. So I have no stylus. Or at least, the calibration seems to go on forever no matter how many times you hit the targets on the screen. eventually I press escape and it leaves. If I hit anywhere on screen with the stylus, it seems to click offscreen, and even switches out of the current application. Believe it or not though, I can use a win CE device with no stylus comfortably. I used windows 98 for a year with no mouse. I forget why exactly...something to do with the drivers. Regardless I can jet around through every tab of every application without issue. I just can't click some buttons that don't "tab".

Of course, I do want to fix that problem. It is annoying to have a partially functional unit...

Anyway, the next order of business is to get some peripherals like compact flash readers/converters to pcmcia etc. I also want my darn serial cable...its 50$ though. Maybe during my final write up on the subject, I'll get the cable, and then modify it so that people can use a replacement DB9 port. Would be interesting to see if I could make one fit neatly. I just need the pinout on the connector.

Say, I bet they only use the GND/TX/RX/DTR lines like they did in the sharp wizard...I could set up a pin terminal replacement that is only 4 pins....that would be as flat as the original connector...

https://www.ebay.com/itm/New-Sharp-Data-Cable-for-HC4000-HC4100-HC45...

$50 dollars for a wire. Shameful. I'll see if I can open it up and find the serial chip. then I can look up the data sheet
and get the pinout by tracing the wires with an ohm meter. Then I could build a custom cable for peanuts. I'd still have to buy a db sub-9 female connector. While I was looking, check these out! Wow! very nice looking, and no soldering?

https://www.ebay.com/itm/DB9-Female-D-Sub-9-Pin-Plug-Breakout-Termin...

Where were these a few years ago? Other end would just go to a terminal strip mounted to the Sharp with hot glue inside. 4 pin terminal header connection. (Just an idea...). Or I can shell out 50 dollars for a 3 foot length of wire...

[edit: My mobilon also has the 32MB upgrade as I suspected! So that is some great news!]
 Top of the page
Posted 2019-01-12 10:36 AM
#


Administrator
H/PC Oracle

10000200020001001001001002525
+ Subscriber


Posts:
14467
Member Nº:
1
Location:
Fields End, UK
Status:
How are you getting on? Any progress with IDE and programming?
 Top of the page
hpc:factor« View previous thread · Developers Arena · View next thread »

Jump to page : 1 2
Now viewing page 2 [15 messages per page]

Jump to forum :
Search this forum
Printer friendly version
E-mail a link to this thread
Seconds to generate: 0.25 - Cached queries : 45 - Executed queries : 28
Server Time now is: Wednesday, 16 January 2019 - 3:20