No Program Entry Point TASM Error
- by Nathan Campos
I'm trying to develop a simple kernel using TASM, using this code:
; beroset.asm
;
; This is a primitive operating system.
;
;**********************************************************************
code segment para public use16 '_CODE'
        .386
        assume cs:code, ds:code, es:code, ss:code
        org 0
Start:
        mov     ax,cs
        mov     ds,ax
        mov     es,ax
        mov     si,offset err_msg
        call    DisplayMsg
spin:
        jmp     spin
;****************************************************************************
; DisplayMsg
;
; displays the ASCIIZ message to the screen using int 10h calls
;
; Entry:
;    ds:si ==> ASCII string
;
; Exit:
;
; Destroyed:
;    none
;
;
;****************************************************************************
DisplayMsg proc
        push    ax bx si
        cld
nextchar:
        lodsb
        or      al,al
        jz      alldone
        mov     bx,0007h
        mov     ah,0eh
        int     10h
        jmp     nextchar
alldone:
        pop     si bx ax
        ret
DisplayMsg endp
err_msg db      "Operating system found and loaded.",0
code ends
        END
Then I compile it like this:
  C:\DOCUME~1\Nathan\Desktop tasm /la /m2 beroset.asm
  Turbo Assembler  Version 4.1  Copyright (c) 1988, 1996 Borland International  
  
  Assembling file:   beroset.asm
  Error messages:    None
  Warning messages:  None
  Passes:            2
  Remaining memory:  406k  
  
  C:\DOCUME~1\Nathan\Desktop tlink beroset, loader.bin
  Turbo Link  Version 7.1.30.1. Copyright (c) 1987, 1996 Borland International
  Fatal: No program entry point  
  
  C:\DOCUME~1\Nathan\Desktop
What can I to correct this error?