;;; -*- Mode:Lisp; Package:User; Fonts:CPTFONTB; Base:8 -*-
;;; (c) Copyright 1985 - HyperTech Associates.  All rights reserved.

;;; Get the features list right immediately so that it can be used anywhere.

#+3600
(Selectq (si:get-release-version)
  (6 (Sstatus :feature :release6))
  (5 (Sstatus :feature :release5))
  (Otherwise
   (Ferror "Unkown system version (~d)." (si:get-release-version))))

;;; +++ need some relief from ti's font madness +++
#+ti (Load "HTech:HyperWindow;TR18"  :Verbose nil)
#+ti (Load "HTech:HyperWindow;TR18B" :Verbose nil)

#+lmi (Load "Sys:Fonts;TR18" :Verbose nil)
#+lmi (Load "Sys:Fonts;TR18B" :Verbose nil)

(pkg-find-package 'HCALC T)

;;; Determine if this is a portrait or landscape screen configuration.
(DefVar hcalc:*landscape*
	(Multiple-Value-Bind (width height)
	    (Send tv:main-screen :size)
	  (> width height)))

(DefSystem HyperCalc
  (:name "HyperCalc")
  (:short-name "HCalc")
  (:pathname-default "HTech: HyperCalc;")
;;;  (:patchable "HTech: HyperCalcPatch;")
;;;  (:initial-status :released)
;;;  #+3600 (:maintaining-sites :HyperTech :CDI-Dallas)
  (:module windows "Windows")
  (:module WorkSheet "WorkSheet")
  (:module defs "Defs")
  (:module frame "Frame")
  (:module display "WorkSheet-Display")
  (:module types ("IO-Functions" "Input-Parser" "Operations" "Save-Load-Files"))
  (:module commands ("Commands" "Range-Commands" "Format-Commands" "Print"))
  (:module help  "Help")

  (:compile-load windows
   ;; Make sure HyperWindow is loaded.
   (:fasload (HyperWindow HyperWindow-Modules))
   (:fasload (HyperWindow HyperWindow-Modules)))
  (:compile-load defs)
  ;; WorkSheet uses tv:array-rows and columns which are defined in HyperWindow
  (:compile-load WorkSheet (:fasload defs windows) (:fasload defs))
  (:compile-load-init display
   (windows WorkSheet defs)
   (:fasload windows WorkSheet defs)
   (:fasload windows WorkSheet defs))
  (:compile-load-init frame
   (WorkSheet defs windows display)
   (:fasload WorkSheet defs windows display)
   (:fasload WorkSheet defs windows display))
  (:compile-load-init commands
   (WorkSheet frame defs windows display)
   (:fasload WorkSheet Display frame defs windows)
   (:fasload WorkSheet Display frame defs windows))
  (:compile-load-init help (windows defs frame)
   (:fasload windows defs frame)
   (:fasload windows defs frame))
  (:compile-load-init types
   (WorkSheet display defs frame)
   (:fasload WorkSheet display defs frame commands)
   (:fasload WorkSheet display defs frame commands))
  )


