Loading ...
Sorry, an error occurred while loading the content.

RE: [TERN] 586 Engine Floating Point Processing

Expand Messages
  • TERN (Chon)
    I d suggest you start with one of the test projects. I believe it s located in either tern 586 test.ide, or perhaps tern 586 fptest.ide. Run the sample
    Message 1 of 5 , Apr 11 12:18 PM
    View Source
    • 0 Attachment
      I'd suggest you start with one of the test projects.
      I believe it's located in either \tern\586\test.ide,
      or perhaps \tern\586\fptest.ide.

      Run the sample program 'fptest.c'. Make sure that
      fpint.asm is added to your project, or there would've
      been compilation errors.

      Since you're not seeing that... it suggests the
      problem is elsewhere. Try commenting out code down
      to just the sin() call. If problems persist, send
      us this stripped down version and we can evaluate
      what's causing the problem.


      > -----Original Message-----
      > From: lcollier1223 [mailto:lcollier@...]
      > Sent: Thursday, April 11, 2002 9:29 AM
      > To: tern@yahoogroups.com
      > Subject: [TERN] 586 Engine Floating Point Processing
      >
      >
      > I purchased a 586 Engine Eval Kit recently for the sole purpose of
      > running some complicated code involving transcendental functions on
      > the math coprocessor. My simple test code having a single call to the
      > sin() function compiles and downloads, but a runtime error
      > of "Unexpected Int21" occurs. The debugger shows that indeed an INT21
      > instruction was compiled. What's up?
      >
      >
      >
      > --------------------------------------------------------
      > Check out TERN's new FlashCore data-logger, ideal for storing
      > large amounts of data in CompactFlash memory disks. See
      http://www.tern.com/flashcore.htm

      To unsubscribe from this group, send an email to:
      tern-unsubscribe@yahoogroups.com



      Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
    • Lance Collier
      I have already tried the fptest.c code, and substituted it for led.c in the led.ide project. It would compile, but fail to link. I then added the bcppfp.lib to
      Message 2 of 5 , Apr 12 6:35 AM
      View Source
      • 0 Attachment
        I have already tried the fptest.c code, and substituted it for led.c in the led.ide project. It would compile, but fail to link. I then added the bcppfp.lib to the project. With this library, it would compile and link using the emulator, or fp coprocessor, depending on target settings, but would always generate the error message "Unexpected Interrupt 0x21" after loading (for both emu.lib and fp87.lib).
         
        I did as you suggested and added the fpint.asm node to the project and it would not compile. I then added the fpint.obj code instead to the project, and succesfully compiled and downloaded, but got the "Program Terminated" error message instead of the "Unexpected Interrupt 0x21" message.
         
        My test routine is already "stripped down" to an infinite loop with the sin() fuction, a pair of delay functions and a pair of led() functions. If the sin() fuction is removed and a literal value substituted, the code executes correctly.
         
        What else can I try? I know that the 586 Engine is a new product for Tern, but I was hoping for more "user friendly" development. You included the fptest.c code, but no fptest.ide to help me get an idea of how a project should be configured for the 586 Engine using the fp coprocessor. I am newly self-taught in "C" so that may be a factor.
        -----Original Message-----
        From: TERN (Chon) [mailto:chon@...]
        Sent: Thursday, April 11, 2002 14:19
        To: tern@yahoogroups.com
        Subject: RE: [TERN] 586 Engine Floating Point Processing

        I'd suggest you start with one of the test projects.
        I believe it's located in either \tern\586\test.ide,
        or perhaps \tern\586\fptest.ide.

        Run the sample program 'fptest.c'.  Make sure that
        fpint.asm is added to your project, or there would've
        been compilation errors.

        Since you're not seeing that... it suggests the
        problem is elsewhere.  Try commenting out code down
        to just the sin() call.  If problems persist, send
        us this stripped down version and we can evaluate
        what's causing the problem.


        > -----Original Message-----
        > From: lcollier1223 [mailto:lcollier@...]
        > Sent: Thursday, April 11, 2002 9:29 AM
        > To: tern@yahoogroups.com
        > Subject: [TERN] 586 Engine Floating Point Processing
        >
        >
        > I purchased a 586 Engine Eval Kit recently for the sole purpose of
        > running some complicated code involving transcendental functions on
        > the math coprocessor. My simple test code having a single call to the
        > sin() function compiles and downloads, but a runtime error
        > of "Unexpected Int21" occurs. The debugger shows that indeed an INT21
        > instruction was compiled. What's up?
        >
        >
        >
        > --------------------------------------------------------
        > Check out TERN's new FlashCore data-logger, ideal for storing
        > large amounts of data in CompactFlash memory disks.  See
        http://www.tern.com/flashcore.htm

        To unsubscribe from this group, send an email to:
        tern-unsubscribe@yahoogroups.com



        Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/





        --------------------------------------------------------
        Check out TERN's new FlashCore data-logger, ideal for storing large amounts of data in CompactFlash memory disks.  See http://www.tern.com/flashcore.htm

        To unsubscribe from this group, send an email to:
        tern-unsubscribe@yahoogroups.com



        Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
      • TERN (Chon)
        Lance, I misspoke originally. You *should* most definitely have the project: tern 586 test.ide Inside this project, there is a target for fptest.axe . You
        Message 3 of 5 , Apr 12 9:30 AM
        View Source
        • 0 Attachment
          Lance,

          I misspoke originally. You *should* most definitely have the
          project:

          \tern\586\test.ide

          Inside this project, there is a target for 'fptest.axe'. You
          should give this a try.

          It sounds to me like you're enabling floating point incorrectly
          if you're explicitly adding bcppfp.lib to your project
          to make it compile. Start over with a new target, or use
          the fptest.axe as a model:

          - First, right click on your target, and select 'Target Expert'.

          - In the top right corner of the dialog that shows up, under
          'Math Options', make sure you have 'Floating Point' selected.
          ('Emulation' is for doing floating point calculations in
          hardware, instead of using the FPU.) Selecting this option
          will add the appropriate libraries to your target.

          - Add fpint.asm to your application (under the .rom node,
          as usual).

          This is all you should need to do.

          -----Original Message-----
          From: Lance Collier [mailto:lcollier@...]
          Sent: Friday, April 12, 2002 6:35 AM
          To: tern@yahoogroups.com
          Subject: RE: [TERN] 586 Engine Floating Point Processing


          I have already tried the fptest.c code, and substituted it for led.c in the
          led.ide project. It would compile, but fail to link. I then added the
          bcppfp.lib to the project. With this library, it would compile and link
          using the emulator, or fp coprocessor, depending on target settings, but
          would always generate the error message "Unexpected Interrupt 0x21" after
          loading (for both emu.lib and fp87.lib).

          I did as you suggested and added the fpint.asm node to the project and it
          would not compile. I then added the fpint.obj code instead to the project,
          and succesfully compiled and downloaded, but got the "Program Terminated"
          error message instead of the "Unexpected Interrupt 0x21" message.

          My test routine is already "stripped down" to an infinite loop with the
          sin() fuction, a pair of delay functions and a pair of led() functions. If
          the sin() fuction is removed and a literal value substituted, the code
          executes correctly.

          What else can I try? I know that the 586 Engine is a new product for Tern,
          but I was hoping for more "user friendly" development. You included the
          fptest.c code, but no fptest.ide to help me get an idea of how a project
          should be configured for the 586 Engine using the fp coprocessor. I am newly
          self-taught in "C" so that may be a factor.
          -----Original Message-----
          From: TERN (Chon) [mailto:chon@...]
          Sent: Thursday, April 11, 2002 14:19
          To: tern@yahoogroups.com
          Subject: RE: [TERN] 586 Engine Floating Point Processing


          I'd suggest you start with one of the test projects.
          I believe it's located in either \tern\586\test.ide,
          or perhaps \tern\586\fptest.ide.

          Run the sample program 'fptest.c'. Make sure that
          fpint.asm is added to your project, or there would've
          been compilation errors.

          Since you're not seeing that... it suggests the
          problem is elsewhere. Try commenting out code down
          to just the sin() call. If problems persist, send
          us this stripped down version and we can evaluate
          what's causing the problem.


          > -----Original Message-----
          > From: lcollier1223 [mailto:lcollier@...]
          > Sent: Thursday, April 11, 2002 9:29 AM
          > To: tern@yahoogroups.com
          > Subject: [TERN] 586 Engine Floating Point Processing
          >
          >
          > I purchased a 586 Engine Eval Kit recently for the sole purpose of
          > running some complicated code involving transcendental functions on
          > the math coprocessor. My simple test code having a single call to the
          > sin() function compiles and downloads, but a runtime error
          > of "Unexpected Int21" occurs. The debugger shows that indeed an INT21
          > instruction was compiled. What's up?
          >
          >
          >
          > --------------------------------------------------------
          > Check out TERN's new FlashCore data-logger, ideal for storing
          > large amounts of data in CompactFlash memory disks. See
          http://www.tern.com/flashcore.htm

          To unsubscribe from this group, send an email to:
          tern-unsubscribe@yahoogroups.com



          Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/





          --------------------------------------------------------
          Check out TERN's new FlashCore data-logger, ideal for storing large amounts
          of data in CompactFlash memory disks. See http://www.tern.com/flashcore.htm

          To unsubscribe from this group, send an email to:
          tern-unsubscribe@yahoogroups.com



          Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.


          Yahoo! Groups Sponsor
          ADVERTISEMENT





          --------------------------------------------------------
          Check out TERN's new FlashCore data-logger, ideal for storing large amounts
          of data in CompactFlash memory disks. See http://www.tern.com/flashcore.htm

          To unsubscribe from this group, send an email to:
          tern-unsubscribe@yahoogroups.com



          Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
        • Lance Collier
          Using fptest.axe as a model, I was able to compile, link, download and run my code! Thanks, Lance ... From: TERN (Chon) [mailto:chon@tern.com] Sent: Friday,
          Message 4 of 5 , Apr 13 1:51 PM
          View Source
          • 0 Attachment
            Using fptest.axe as a model, I was able to compile, link, download and run my code!
             
            Thanks,
             
            Lance
            -----Original Message-----
            From: TERN (Chon) [mailto:chon@...]
            Sent: Friday, April 12, 2002 11:31
            To: tern@yahoogroups.com
            Subject: RE: [TERN] 586 Engine Floating Point Processing

            Lance,

            I misspoke originally.  You *should* most definitely have the
            project:

            \tern\586\test.ide

            Inside this project, there is a target for 'fptest.axe'.  You
            should give this a try.

            It sounds to me like you're enabling floating point incorrectly
            if you're explicitly adding bcppfp.lib to your project
            to make it compile.  Start over with a new target, or use
            the fptest.axe as a model:

            - First, right click on your target, and select 'Target Expert'.

            - In the top right corner of the dialog that shows up, under
            'Math Options', make sure you have 'Floating Point' selected.
            ('Emulation' is for doing floating point calculations in
            hardware, instead of using the FPU.)  Selecting this option
            will add the appropriate libraries to your target.

            - Add fpint.asm to your application (under the .rom node,
            as usual).

            This is all you should need to do.

            -----Original Message-----
            From: Lance Collier [mailto:lcollier@...]
            Sent: Friday, April 12, 2002 6:35 AM
            To: tern@yahoogroups.com
            Subject: RE: [TERN] 586 Engine Floating Point Processing


            I have already tried the fptest.c code, and substituted it for led.c in the
            led.ide project. It would compile, but fail to link. I then added the
            bcppfp.lib to the project. With this library, it would compile and link
            using the emulator, or fp coprocessor, depending on target settings, but
            would always generate the error message "Unexpected Interrupt 0x21" after
            loading (for both emu.lib and fp87.lib).

            I did as you suggested and added the fpint.asm node to the project and it
            would not compile. I then added the fpint.obj code instead to the project,
            and succesfully compiled and downloaded, but got the "Program Terminated"
            error message instead of the "Unexpected Interrupt 0x21" message.

            My test routine is already "stripped down" to an infinite loop with the
            sin() fuction, a pair of delay functions and a pair of led() functions. If
            the sin() fuction is removed and a literal value substituted, the code
            executes correctly.

            What else can I try? I know that the 586 Engine is a new product for Tern,
            but I was hoping for more "user friendly" development. You included the
            fptest.c code, but no fptest.ide to help me get an idea of how a project
            should be configured for the 586 Engine using the fp coprocessor. I am newly
            self-taught in "C" so that may be a factor.
            -----Original Message-----
            From: TERN (Chon) [mailto:chon@...]
            Sent: Thursday, April 11, 2002 14:19
            To: tern@yahoogroups.com
            Subject: RE: [TERN] 586 Engine Floating Point Processing


            I'd suggest you start with one of the test projects.
            I believe it's located in either \tern\586\test.ide,
            or perhaps \tern\586\fptest.ide.

            Run the sample program 'fptest.c'.  Make sure that
            fpint.asm is added to your project, or there would've
            been compilation errors.

            Since you're not seeing that... it suggests the
            problem is elsewhere.  Try commenting out code down
            to just the sin() call.  If problems persist, send
            us this stripped down version and we can evaluate
            what's causing the problem.


            > -----Original Message-----
            > From: lcollier1223 [mailto:lcollier@...]
            > Sent: Thursday, April 11, 2002 9:29 AM
            > To: tern@yahoogroups.com
            > Subject: [TERN] 586 Engine Floating Point Processing
            >
            >
            > I purchased a 586 Engine Eval Kit recently for the sole purpose of
            > running some complicated code involving transcendental functions on
            > the math coprocessor. My simple test code having a single call to the
            > sin() function compiles and downloads, but a runtime error
            > of "Unexpected Int21" occurs. The debugger shows that indeed an INT21
            > instruction was compiled. What's up?
            >
            >
            >
            > --------------------------------------------------------
            > Check out TERN's new FlashCore data-logger, ideal for storing
            > large amounts of data in CompactFlash memory disks.  See
            http://www.tern.com/flashcore.htm

            To unsubscribe from this group, send an email to:
            tern-unsubscribe@yahoogroups.com



            Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/





            --------------------------------------------------------
            Check out TERN's new FlashCore data-logger, ideal for storing large amounts
            of data in CompactFlash memory disks.  See http://www.tern.com/flashcore.htm

            To unsubscribe from this group, send an email to:
            tern-unsubscribe@yahoogroups.com



            Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.


            Yahoo! Groups Sponsor
            ADVERTISEMENT





            --------------------------------------------------------
            Check out TERN's new FlashCore data-logger, ideal for storing large amounts
            of data in CompactFlash memory disks.  See http://www.tern.com/flashcore.htm

            To unsubscribe from this group, send an email to:
            tern-unsubscribe@yahoogroups.com



            Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.




            --------------------------------------------------------
            Check out TERN's new FlashCore data-logger, ideal for storing large amounts of data in CompactFlash memory disks.  See http://www.tern.com/flashcore.htm

            To unsubscribe from this group, send an email to:
            tern-unsubscribe@yahoogroups.com



            Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
          Your message has been successfully submitted and would be delivered to recipients shortly.